我有问题从mysql_fetch_assoc写回UPDATE表。我让它与INSERT一起使用,但随后又增加了一行。
有没有人可以帮助我正确的语法?
我发现了这个问题:
$sql = "SELECT * FROM oppgave WHERE modulid=5 AND resultat is NULL ORDER BY RAND() LIMIT 1";
$data = null;
$dataid = null;
$result = mysql_query($sql, $tilkobling);
echo "<hr>";
while ($nextrow= mysql_fetch_assoc($result)){
echo "Svar: " . $nextrow['besvarelse'];
echo "<br>Modulid: " . $nextrow['modulid'];
echo "<br>student: " . $nextrow['studentid'];
echo "<br>";
$data = $nextrow['modulid'];
$dataid = $nextrow['id'];
}
echo '<form name="input" action="tilretting.php" method="post">';
echo'Retter<input type="text" name="correctedby" value="'.$_SESSION['myusername'].'">';
echo '<input type="hidden" name="resultat" value="0">';
echo 'Godkjent<input type="checkbox" name="resultat" value="1">';
echo 'modul<input type="text" name="modulid" value="'.$data.'">';
echo 'id<input type="text" name="id" value="'.$dataid.'">';
echo '<input class="levermodulknapp" type="submit" name="lever1" value="Send inn retting">';
echo "</form>";
echo "<hr>";
?>
我这就是我尝试放入提交的php:
<?php
include "header.inc.php";
//in this file the connetion to server
include "funksjoner.inc.php";
$correctedby= $_POST['correctedby'];
$resultat= $_POST['resultat'];
$data = $nextrow['modulid'];
$dataid = $nextrow['id'];
//Step 2: connetion to db
$tilkobling = kobleTil(); //trenger ikke oppgi databasenavn
//Steg 3: Kjør en SQL-query
$sql = "UPDATE oppgave SET correctedby='".$correctedby."', resultat='".$resultat.", WHERE id='".$dataid."'";
mysql_query($sql, $tilkobling);
?>
我做错了什么? 非常感谢有关这个的任何提示!
答案 0 :(得分:0)
您正在进行不必要的连接,并且在WHERE
子句之前还有一个额外的逗号..
$sql = "UPDATE oppgave SET correctedby='$correctedby', resultat='$resultat' WHERE id='$dataid'";