前のトピックを変更するためのコードを適用し、情報を変更するコードを作成しましたが、内容を変更して送信した後、テーブルの内容をクエリしたところ、xuehao? を除いて他の内容が空であることがわかりました。
<?php//######################学生信息修改1########################## include "config.php"; include "header.php";?> <title>修改学生信息</title><?php extract($_REQUEST); $query="update $student_table set name='$name1' where xuehao='$xuehao'"; mysql_query("set names 'GB2312'"); $result=mysql_query($query); $query="update $student_table set sex='$sex1' where xuehao='$xuehao'"; mysql_query("set names 'GB2312'"); $result=mysql_query($query); $query=mysql_query("update $student_table set class='$class1' where xuehao='$xuehao'"); mysql_query("set names 'GB2312'"); $result=mysql_query($query); $query=mysql_query("update $student_table set password='$password2' where xuehao='$xuehao'"); mysql_query("set names 'GB2312'"); $result=mysql_query($query); $query=mysql_query("update $student_table set password1='$password3' where xuehao='$xuehao'"); mysql_query("set names 'GB2312'"); $result=mysql_query($query); $query="update $student_table set love='$love1' where xuehao='$xuehao'"; mysql_query("set names 'GB2312'"); $result=mysql_query($query); $query="update $student_table set telephone='$telephone1' where xuehao='$xuehao'"; mysql_query("set names 'GB2312'"); $result=mysql_query($query); $query="update $student_table set reward='$reward1' where xuehao='$xuehao'"; mysql_query("set names 'GB2312'"); $result=mysql_query($query); if($password2!=$password3) { echo"<p align=\"center\"><font color=\"#FF0000\"><b><big>输入的密码不一致,请重新输入。</big></b></font></p>"; echo "<meta http-equiv=\"refresh\" content=\"2;url=alter_student1.php\">"; exit; } if($result==true) { echo"<p align=\"center\"><font color=\"#FF0000\"><b><big>修改信息成功!</big></b></font>"; echo "<meta http-equiv=\"refresh\" content=\"1;url=index.php\">"; exit; } else { echo"<p align=\"center\"><font color=\"#FF0000\"><b><big>修改出错,请返回重新修改。</big></b></font></p>"; echo "<meta http-equiv=\"refresh\" content=\"1;url=alter_student.php\">"; exit; } ?><?php include "foot.php";?>
なんと悲劇だ、誰も私の質問に答えてくれなかった...
print_r($_REQUES) 見てください
extract($_REQUEST);この関数を見てください。まず変数を出力して、値が空かどうかを確認します。少なくとも、フォームに間違った文字を入力した可能性が非常に高いと思います。
データベースの更新処理に無理があり、毎回名前を設定する必要がないことを示します
結果を投稿する
if($password2!=$password3)
{
echo"< p align=" center">入力されたパスワードは一貫していません。再入力してください。< /font> p>";
echo "";
exit
}
は、次のコードの前に配置する必要があります。データを変更します
すべてのデータ変更命令は一緒にマージされる必要があります
実行中にトラブルシューティングが追加されます
php はマジック エスケープをキャンセルしました。受信したファイルの変換に注意してください自分でデータを作成
print_r($_REQUEST);
if($password2!=$password3)
{
echo"
入力されたパスワードは一貫性がありません。再入力してください。 ="refresh" content="2;url=alter_student1.php">";
exit
}
である必要があります。データを変更するコードの前に配置します
すべてのデータ変更命令は一緒にマージする必要があります
トラブルシューティング
$result=mysql_query($query) または die(mysql_error());
php がマジック エスケープをキャンセルしたことに注意してください。受信データをエスケープした結果が次のようになることを確認しましたが、テーブルはまだ空です。私のコード自体に何か問題があるのでしょうか?
変数に値が割り当てられていないため
print_r($_REQUEST);
結果を投稿してください
if($password2!=$password3)
{
echo"
入力されたパスワードは矛盾しています。再入力してください。
";$query="update...
$query=mysql_query("update...
print_r($_REQUEST);
贴出结果
if($password2!=$password3)
{
echo"
输入的密码不一致,请重新输入。
";<?php//######################学生信息修改1########################## include "config.php"; include "header.php";?> <title>修改学生信息</title><?php extract($_REQUEST); if($password2!=$password3) { echo"<p align=\"center\"><font color=\"#FF0000\"><b><big>输入的密码不一致,请重新输入。</big></b></font></p>"; echo "<meta http-equiv=\"refresh\" content=\"2;url=alter_student1.php\">"; exit; } $query="update $student_table set name='$name1',sex='$sex1' where xuehao='$xuehao'"; mysql_query("set names 'GB2312'"); $result=mysql_query($query)or die(mysql_error()); $query=mysql_query("update $student_table set class='$class1',password='$password2',password1='$password3' where xuehao='$xuehao'"); mysql_query("set names 'GB2312'"); $result=mysql_query($query)or die(mysql_error()); $query="update $student_table set love='$love1',telephone='$telephone1', reward='$reward1' where xuehao='$xuehao'"; mysql_query("set names 'GB2312'"); $result=mysql_query($query)or die(mysql_error()); if($result==true) { echo"<p align=\"center\"><font color=\"#FF0000\"><b><big>修改信息成功!</big></b></font>"; echo "<meta http-equiv=\"refresh\" content=\"1;url=index.php\">"; exit; } else { echo"<p align=\"center\"><font color=\"#FF0000\"><b><big>修改出错,请返回重新修改。</big></b></font></p>"; echo "<meta http-equiv=\"refresh\" content=\"1;url=alter_student.php\">"; exit; } print_r($_REQUEST);?><?php include "foot.php";?>
我yousql直接写的不会用代码
我yousql直接写的不会用代码 什么意思?
上面提示你SQL语法有错误,上面说过了,有些变量并没有extract出来,也就是你下面用来拼接SQL的变量有的是没有定义过的,也就是空值。