dtt78245 2011-10-22 09:34
浏览 26

使MySQL查询与从$ _GET派生的变量一起运行

I've been stuck on this for hours! Please excuse my naivety as I am a newb with programming.

My page runs a number of MySQL UPDATE queries based on some variables. One of the variables is derived from the URL of the current page (which isn't static) so I have to use $_GET to acquire it:

$subjvar = $_GET['subj'];
echo $subjvar;

This works fine - the URL is e.g. blahblah.php?subj=07EN and the above echoes 07EN with no problems.

However, when the MySQL query tries to run:

$insertjavavar = "UPDATE timedb SET $subjvar = '$javavartodb' WHERE week = '$javavaralsotodb' ";
$insertjavavarquery = mysql_query($insertjavavar) or die ("JQuery sucks");

it doesn't update the database. It doesn't give me the die message, it just fails silently.

The query doesn't seem to be the problem - if I define $subjvar manually:

$subjvar = '07EN';

it runs fine, updating the field entitled 07EN with all the relevant data.

So I am completely mystified as to why it won't do so when the variable is defined using $_GET.

I should mention that the MySQL query in question is run based on a JQuery function, and receives its other variables (without any problems, seemingly) from AJAX POSTs.

Please let me know if I've missed anything out and I can provide more info / code as necessary.

  • 写回答

4条回答 默认 最新

  • doulan8846 2011-10-22 09:47
    关注

    This does not make are sense at all. Is $subjvar meant to contain the name of a column in the timedb table? Because that is what you seem to be doing. But if its value is 07EN it will blow up, and you would get your die message.

    评论

报告相同问题?