我创建了一个应该在输入框中显示数据库表内容的表单,当输入框的内容被更改并提交时,数据库应该更新.
<HTML><head></head><body><?PHP$dbhost = '****';$dbuser = '****';$dbpass = '****';$conn = MysqL_connect($dbhost,$dbuser,$dbpass);if(! $conn ){ dIE('Could not connect: ' . MysqL_error());}MysqL_select_db('****');$query = "SELECT * FROM anstalld";$result = MysqL_query($query) or dIE(MysqL_error());?><form method="post" action="<?PHP $_PHP_SELF ?>"><table wIDth="400" border="0" cellspacing="1" cellpadding="2"><tr><?PHP while($row = MysqL_fetch_array($result)) {$namn = $row['namn'];$mandag = $row['mandag'];$tisdag = $row['tisdag'];$onsdag = $row['onsdag'];$torsdag = $row['torsdag'];$fredag = $row['fredag'];?><td wIDth="100"></td><td><?=$namn?></td></tr><tr><td wIDth="100">Mandag</td><td><input name="mandagID" type="text" value="<?=$mandag?>"></td></tr><tr><td wIDth="100">Tisdag</td><td><input name="tisdagID" type="text" value="<?=$tisdag?>"></td></tr><tr><td wIDth="100">Onsdag</td><td><input name="onsdagID" type="text" value="<?=$onsdag?>"></td></tr><tr><td wIDth="100">Torsdag</td><td><input name="torsdagID" type="text" value="<?=$torsdag?>"></td></tr><tr><td wIDth="100">Fredag</td><td><input name="fredagID" type="text" value="<?=$fredag?>"></td></tr><?PHP } ?><tr><td wIDth="100"> </td><td> </td></tr><tr><td wIDth="100"> </td><td><input name="update" type="submit" ID="update" value="Update"></td></tr></table></form><?PHPif(isset($_POST['update'])){$namn = $_POST['namnID'];$mandag = $_POST['mandagID'];$tisdag = $_POST['tisdagID'];$onsdag = $_POST['onsdagID'];$torsdag = $_POST['torsdagID'];$fredag = $_POST['fredagID'];$sql = MysqL_query("UPDATE anstalld SET mandag = '$mandag',tisdag = '$tisdag',onsdag = '$onsdag',torsdag = '$torsdag',fredag = '$fredag' WHERE namn = '$namn'");$retval = MysqL_query( $sql,$conn );if(! $retval ){ dIE('Could not update data: ' . MysqL_error());}echo "Updated data successfully\n";}?></body></HTML>
表单显示数据库的内容很好,但更新后我收到此消息:
You have an error in your sql Syntax; check the manual that
corresponds to your MysqL server version for the right Syntax to use
near ‘1’ at line 1
我感谢任何帮助.
解决方法 使用MysqLi而不是MysqL,您需要传递数据库名称或模式:之前:
$conn = MysqL_connect($dbhost,$dbpass);
后:
$conn = MysqL_connect($dbhost,$dbpass,$myDBname);总结
以上是内存溢出为你收集整理的使用HTML表单和PHP更新MySQL全部内容,希望文章能够帮你解决使用HTML表单和PHP更新MySQL所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)