2012-03-27 11 views
0

基本的に私はJavaScriptからphp に変換した配列の値でデータベースを更新したいのですが、ボタンを押すとデータベースが更新されます 私はこのコードを持っていますが、PHPデータベースの更新が正常に行われない

var v = document.getElementsByName('mark[]'); 
var arr = new Array(); 
for(var a=0; a<v.length; a++){ 
arr[a]=inputs[a].value; 
} 
var str; 
for(var i=0; i<arr.length; i++) { 

    str+='&array_items[]='+arr[i]; 
} 
document.location.href='./markandfeedback.php?'+str; 
} 




</script>"; 


for ($i=0; $i<count($_GET['array_items']); $i++){ 

    $arr[] = $_GET['array_items'][$i]; 
} 




    if(isset($_POST['update'])){  

    $sql1="UPDATE `groupdatabase1` .`questions` SET `mark`= '".$arr[1]."',`studentID`= '4140001', `feedback` = 'meh' WHERE `questions`.`questionID`=1"; 
    mysql_query($sql); 
} 
+0

HTMLを投稿してください。これはフォームですか?あなたはAJAXを使いたいですか?そうでない場合は、フォームを提出しないでください。 – prodigitalson

答えて

0

$sql1という名前の変数にクエリを割り当てていますが、mysql_queryの呼び出しで$sqlという別の(おそらく初期化されていない)変数を使用しています。

0

まあyoureのGETを送信POST要求youreのを送信していないので、$_POST['update']が存在することはありません。それに追加するにはなぜ"スクリプトタグがあるのですか...あなたがコードを省略し、実際にphpの中に書かれていない限り、その理由はありません。

通常、これにはAJAXを使用します。それ以外の場合は、フォームを使用します。実際のフォームインターフェイスが存在しないように、JSを実行して結果を隠しフィールドのセットに入れます。

関連する問題