2016-09-19 18 views
0

Hello everyone?! When I change the value of my texboxes, I have this kind of error. Click to see the image.更新時のエラーメッセージ

また、ここに私のコードです。私は何が起こったのか正確にはわからない。私は誰かがこれで私を助けることを願っています。前もって感謝します。 :(

<!--Update--> 
<?php 
    include "config.php"; 
    include "header.php"; 
    if(isset($_GET['u'])): 
    if(isset($_POST['bts'])): 
     $stmt = $mysqli->prepare("UPDATE personal SET id_personal=?, name=?, date=?, datepaid=?, amount=? WHERE id_personal=?"); 
     $stmt->bind_param('sssss', $id, $en, $date, $dp, $amnt); 

     $id = $_POST['id']; 
     $en = $_POST['en']; 
     $date = $_POST['date']; 
     $dp = $_POST['dp']; 
     $amnt = $_POST['amnt']; 

     if($stmt->execute()): 
     echo "<script>location.href='index.php'</script>"; 
     else: 
     echo "<script>alert('".$stmt->error."')</script>"; 
     endif; 
    endif; 
    $res = $mysqli->query("SELECT * FROM personal WHERE id_personal=".$_GET['u']); 
    $row = $res->fetch_assoc(); 
?> 
+1

エラーはかなり明確です。 –

+0

私のコードでも試してみます。私はちょうど5を置く。 –

+0

'sssss'とは何ですか? – xzegga

答えて

0

エラーは、「変数の数は、パラメータの数と一致しません」ほとんど明らかである。

あなたの「$stmt->bind_param()」あなたが6ヶ所で変数を参照してきたように、6つの変数を持っている必要があります「$mysqli->prepare()」文

0

あなたがIDを更新または変更したい場合は、あなたが1以上の引数/パラメータを渡す必要があります

あなたはIDを更新したくない場合は、次の手順を実行します。。

$stmt = $mysqli->prepare("UPDATE personal SET name=?, date=?, datepaid=?, amount=? WHERE id_personal=?"); 
    $stmt->bind_param('sssss', $en, $date, $dp, $amnt, $id); 


    $en = $_POST['en']; 
    $date = $_POST['date']; 
    $dp = $_POST['dp']; 
    $amnt = $_POST['amnt']; 
    $id = $_POST['id']; 

希望すると助かります!

関連する問題