我一直在摸索我的頭好一個小時左右,但我無法弄清楚我在這裏做錯了什麼。我希望有人能指出我正確的方向。mysql查詢INSERT INTO和SET問題
我想插入一些數據到SQL數據庫使用INSERT INTO方法,但它似乎並沒有工作。我收錄了很多回聲,看看錯誤可能發生在哪裏。由此我知道代碼是OK,直到INSERT INTO部分被調用。此外,在線檢查數據庫顯示沒有添加任何信息...在線數據庫有3個表格,'噪聲','波'和'脈衝'。此外,所有的字段都存在,所以我真的不明白爲什麼這個代碼失敗。
<?php
//Connect To Database
$hostname='myhostname';
$username='myusername';
$password='mypassword';
$dbname='dbname';
mysql_connect($hostname,$username, $password) OR DIE ('Unable to connect to database! Please try again later.');
mysql_select_db($dbname);
// test to see what kind of instrument is being uploaded.
$type=strip_tags($_GET['TYPE']);
if($type == 'noise') {
$audio=strip_tags($_GET['AUDIO']);
echo $audio;
$automate=strip_tags($_GET['AUTOMATE']);
echo $automate;
$by=strip_tags($_GET['BY']);
echo $by;
$envelope=strip_tags($_GET['ENVELOPE']);
echo $envelope;
$length=strip_tags($_GET['LENGTH']);
echo $length;
$name=strip_tags($_GET['NAME']);
echo $name;
$notes=strip_tags($_GET['NOTES']);
echo $notes;
$output=strip_tags($_GET['OUTPUT']);
echo $output;
$patchname=strip_tags($_GET['PATCH_NAME']);
echo $patchname;
$s_cmd=strip_tags($_GET['S_CMD']);
echo $s_cmd;
$shape=strip_tags($_GET['SHAPE']);
echo $shape;
$table=strip_tags($_GET['TABLE']);
echo $table;
$table0=strip_tags($_GET['table0']);
echo $table0;
$table1=strip_tags($_GET['table1']);
echo $table1;
$table2=strip_tags($_GET['table2']);
echo $table2;
$table3=strip_tags($_GET['table3']);
echo $table3;
$table4=strip_tags($_GET['table4']);
echo $table4;
$table5=strip_tags($_GET['table5']);
echo $table5;
$table6=strip_tags($_GET['table6']);
echo $table6;
$table7=strip_tags($_GET['table7']);
echo $table7;
$table8=strip_tags($_GET['table8']);
echo $table8;
$table9=strip_tags($_GET['table9']);
echo $table9;
$tableA=strip_tags($_GET['tableA']);
echo $tableA;
$tableB=strip_tags($_GET['tableB']);
echo $tableB;
$tableC=strip_tags($_GET['tableC']);
echo $tableC;
$tableD=strip_tags($_GET['tableD']);
echo $tableD;
$tableE=strip_tags($_GET['tableE']);
echo $tableE;
$tableF=strip_tags($_GET['tableF']);
echo $tableF;
//input this info into the SQL noise instrument table
$request = mysql_query("INSERT INTO `noise` SET
AUDIO = '$audio',
AUTOMATE = '$automate',
BY = '$by',
ENVELOPE = '$envelope',
LENGTH = '$length',
NAME ='$name',
NOTES = '$notes',
OUTPUT = '$output',
PATCH_NAME = '$patchname',
S_CMD = '$s_cmd',
SHAPE = '$shape',
TABLE = '$table',
table0 = '$table0',
table1 = '$table1',
table2 = '$table2',
table3 = '$table3',
table4 = '$table4',
table5 = '$table5',
table6 = '$table6',
table7 = '$table7',
table8 = '$table8',
table9 = '$table9',
tableA = '$tableA',
tableB = '$tableB',
tableC = '$tableC',
tableD = '$tableD',
tableE = '$tableE',
tableF = '$tableF',
TYPE = '$type';");
if($request) {
echo "Your patch has been successfully uploaded.";
echo "Thanks for contributing!";
}
else {
echo "there has been a problem";
}
}
?>
當我從我的iPhone應用程序加載此網址:
NSString *website = [NSString stringWithFormat:@"http://mywebsite/problem.php?AUDIO=%@&AUTOMATE=%@&BY=%@&ENVELOPE=%@&LENGTH=%@&NAME=%@&NOTES=%@&OUTPUT=%@&PATCH_NAME=%@&S_CMD=%@&SHAPE=%@&TABLE=%@&table0=%@&table1=%@&table2=%@&table3=%@&table4=%@&table5=%@&table6=%@&table7=%@&table8=%@&table9=%@&tableA=%@&tableB=%@&tableC=%@&tableD=%@&tableE=%@&tableF=%@&TYPE=%@", audio, automate, by, envelope, length, name, notes, output, patch_name, s_cmd, shape, table, table0, table1, table2, table3, table4, table5, table6, table7, table8, table9, tableA, tableB, tableC, tableD, tableE, tableF, type];
[BackgroundLoader loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:website]]];
我得到的輸出是:
AUDIOAUTOMATEBYENVELOPELENGTHNAMENOTESOUTPUTPATCH_NAMES_CMDSHAPETABLETABLE0...TABLEFthere has been a problem
有人能看到爲什麼這個代碼不更新表?
在此先感謝。
所以你的問題在於這些:'$ ... =用strip_tags($ _ GET [ '...']); '.. hmmmm – LouwHopley 2011-06-12 09:11:41
只能使用SET和UPDATE。 – kinakuta 2011-06-12 09:11:52