ホームページ  >  に質問  >  本文

以下のコードでは情報を変更できません IDが取得できないか、取得ミスにより情報の変更ができないようです。

edit.php ファイルのコードは次のとおりです:

<?php
include("./config/conn.php");//コンテンツはデータベースへの接続に関連しています
$id = $ _GET['id'];
$pid = $_POST['pid'];
$name = $_POST['name'];
$dept = $_POST[ 'dept'];
$phone = $_POST['phone'];
$tel = $_POST['tel'];
$time = date("Y-m-d H:i:s") ;
if( $conn){
$sql = "更新 txl セット pid='$pid',name='$name',dept='$dept',phone='$phone',tel= '$tel',cre_time ='$time' where id='$id'";
$que = mysqli_query($conn,$sql);
if($que){
echo "< ;script>alert(' 変更が成功し、 ');location.href='txl_list.php';</script>";
}else{
='txl_list.php';< /script>";
}
}
?>

----- --------- ---------------------------------

上記のコード媒体:

$sql = "更新 txl セット pid='$pid',name='$name',dept='$dept',phone='$phone',tel='$tel', cre_time='$time' ここで id ='$id'";

id='$id'"を直接指定することで特定のid値を変更できます。理由はわかりませんが、id値が取得されているような気がします。 question

------------------------------------------ -- ------------------------

ページのコードを次のように変更します:

<html>

<head>
<title></title>
<link rel="stylesheet" type="text/css" href="./CSS/style.css">
</head>
<body>
<?php include("header.php");?>
<?php
include("./config /conn.php");
$id = $_GET['id'];
$sql = "select * from txl where id='$id'";
$que = mysqli_query($ conn,$sql);
$rw = mysqli_fetch_assoc($que);
?>
<div class="div1">
<form action="edit.php" method="post">
<input type="hidden" name="id" value="<?php echo $rw['pid'];?>">
< p>用户编号:<input type="text" name="pid" value="<?php echo $rw['pid'];?>"></p>
< p>用户姓名:<input type="text" name="name" value="<?php echo $rw['name'];?>"></p>
< p>用户部门:<select id="dept" name="dept">
<option value="<?php echo $rw['dept'];?>">< ?php echo $rw['dept'];?></option>
<option name="cwk">财务科</option>
<option name="sjk" >审计科</option>
<option name="bwk">保卫科</option>
</select></p>
<p>携帯番号番号:<input type="text" name="phone"value="<?php echo $rw['phone' ];?>"></p>
<p>办公電话:<input type="text" name="tel"value="<?php echo $rw['tel' ];?>"></p>
<p><input type="submit" value="修正">  <input type="reset" value="重置"></p>
</form>
</div>
<?php include ("footer.html");?>
</body>
</html>


##変更プロンプトをクリックすると成功します。実際、データは変更されていません。問題がどこにあるのか教えてください。

不吃玉米糖不吃玉米糖2587日前1330

全員に返信(2)返信します

  • 不吃玉米糖

    不吃玉米糖2017-10-25 19:27:41

    問題を発見しました。送信ページ <form action="edit.php" method="post">で POST 送信を使用しました。

    受信ページも POST モードにする必要があります。$id = $_GET[ 'id ']; $id = $_POST['id']; に変更します。

    返事
    0
  • Eli

    Eli2017-10-07 11:13:34

    まず、php ファイルに $_GET['id'] を出力して、値を取得できるかどうか、またはパラメーター名が正しく記述されているかどうかを確認します

    返事
    0
  • 不吃玉米糖

    ID番号は正しく取得できていますが、

    不吃玉米糖 · 2017-10-07 20:39:22
    不吃玉米糖

    http://localhost/test/TongXunLu/txl_edit.php?id=1 通常どおり ID 値を取得するには、変更ボタンをクリックします。

    不吃玉米糖 · 2017-10-07 20:41:26
    Eli

    次のように、SQL ステートメントの一重引用符と二重引用符を交換してみてください。 $sql = '更新 txl セット pid="$pid",name="$name",dept="$dept",phone="$phone",tel="$tel",cre_time="$time" ここで id ="$id"';

    Eli · 2017-10-08 08:58:12
  • キャンセル返事