2017-07-21 12 views
-2

フォームは以下のとおりであるプリペアドステートメントを使用して、:UPDATEボタンを押しても何も起きません。 PHPファイルにデータを送信

<center> 
<form action="update.php" method="post"> 
<fieldset style="width:50%"><legend>Please do the required changes</legend><br> 
<label for="Name">Name :<br></label><input name="name" type="text" size="20" maxlength="40" value="<?php echo $data2[Name]?>"><br> 
<label for="CNIC">CNIC :<br></label><input name="cnic" type="text" size="20" maxlength="15" value="<?php echo $data2[CNIC]?>"><br> 
<label for="Date">Booking Date :<br></label><input name="booking-date" type="date" size="20" value="<?php echo $data2[Date]?>"><br> 

<!-- <label for="Ocassion">Ocassion :<br></label> --> 
<label for="Ocassion">Ocassion :<br></label><input name="ocassion" type="text" size="20" maxlength="15" value="<?php echo $data2[Ocassion]?>"><br> 

<label for="Address">Address :<br></label><input name="address" type="text" size="20" maxlength="11" value="<?php echo $data2[Address]?>"><br> 

<label for="Phone Number">Phone Number :<br></label><input name="phone-no" type="text" size="20" maxlength="11" value="<?php echo $data2[Phone_No]?>"><br> 
<label for="Bride Mobile">Bride Mobile :<br></label><input name="bride-mobile" type="number" size="20" maxlength="11" value="<?php echo $data2[Bride_Mobile]?>"><br> 
<label for="Groom Mobile">Groom Mobile :<br></label><input name="groom-mobile" type="number" size="20" maxlength="11" value="<?php echo $data2[Groom_Mobile]?>"><br> 
<label for="Family Mobile">Family Mobile :<br></label><input name="family-mobile" type="number" size="20" maxlength="11" value="<?php echo $data2[Family_Mobile]?>"><br> 
<label for="Email">Email :<br></label><input name="email" type="text" size="20" maxlength="30" value="<?php echo $data2[EMail]?>"><br> 
<label for="Who may I Thank for Refering You?">Who may I Thank for Refering You? :<br></label><input name="refering" type="text" size="20" maxlength="40" value="<?php echo $data2[Referring]?>"><br> 
<label for="Do you provide consent to share images on our official web page">Do you provide consent to share images on our official web page? :<br><br></label><input type="radio" name="share" <?php echo ($data2[Share]=='Yes')?'checked':'' ?> value="Yes">Yes<br> 
<input type="radio" name="share" <?php echo ($data2[Share]=='No')?'checked':'' ?> value="No">No<br><br> 
<label for="If yes, with Identity">If yes, with Identity? :<br><br></label><input type="radio" name="permission" <?php echo ($data2[Permission]=='Yes')?'checked':'' ?> value="Yes">Yes<br> 
<input type="radio" name="permission" <?php echo ($data2[Permission]=='No')?'checked':'' ?> value="No">No<br><br> 
<!-- To center the button i'm embedding the buttons in a paragraph with an id as well. the id is used for CSS in head --> 
<p id="btn"> 
<input type="submit" value="Update Record" name="submit_display_data_form" style="font-size:16px"></p> 
</fieldset> 
</form> 
</center> 
</body> 
</html> 

のphpファイルは次のとおりです。

<?php error_reporting(0); 
$server="localhost"; 
$user="root"; 
$password=""; 
$database="camouflage_studio"; 

$con = mysqli_connect($server,$user,$password,$database); 
if (mysqli_connect_errno()) 
    { 
    echo "Connection Error: " . mysqli_connect_error(); 
    } 
// Updation 
$stmt = $con->prepare("UPDATE 'personal_detail' SET Name = ?, CNIC = ?, Date = ?, Ocassion = ?, Address = ?, Phone_No = ?, Bride_Mobile = ?, Groom_Mobile = ?, Family_Mobile = ?, EMail = ?, Referring = ?, Share = ?, Permission = ? WHERE CNIC = ?"); 

$stmt->bind_param('ssssssiiissss', $_POST['name'], $_POST['cnic'], $_POST['booking-date'], $_POST['ocassion'], $_POST['address'], $_POST['phone-no'], $_POST['bride-mobile'], $_POST['groom-mobile'], $_POST['family-mobile'], $_POST['email'], $_POST['refering'], $_POST['share'], $_POST['permission'], $_POST['cnic']); 

if(mysqli_stmt_execute($stmt)) 
{ 
echo '<script language="javascript" type="text/javascript"> 
       alert("Record Updated Successfully"); 
       window.location = "admin.php"; 
     </script>'; 
} 
else 
echo "Prepare Error: ",$con->error;  //remove $con->error before making ONLINE THE CODE. 

$stmt->close(); 
$con->close(); 
?> 
<!DOCTYPE html> 
<html> 
<head> 
<title>Record Updation</title> 
</head> 

<body> 
</body> 
</html> 

問題は、私はこれだけの更新のUPDATE RECORDボタンを押したときということです.phpファイルがブラウザで開き、何も起こりません。どちらのエラーも表示も更新もありません。

+0

申し訳ありません - あなたは$ stmtまたは$ sel_sqlを実行していますか? –

+0

準備済みのステートメント(コードから暗示されていますが、大文字と小文字は区別されていません)を使用している場合は、正しく使用してください。 –

+0

ああ、申し訳ありませんが、間違いなく$ sel_sqlです。 –

答えて

0

2つのもの、Dateはmysqlの予約語機能です。その単語を列名として渡すには、それをバッククォートで囲む必要があります。 Secondeの問題は、バッククォートは(diffrenceに気づく?)

$stmt = $con->prepare("UPDATE `personal_detail` SET `Name` = ?, `CNIC` = ?, `Date` = ?, `Ocassion` = ?, `Address` = ?, `Phone_No` = ?, `Bride_Mobile` = ?, `Groom_Mobile` = ?, `Family_Mobile` = ?, `EMail` = ?, `Referring` = ?, `Share` = ?, `Permission` = ? WHERE `CNIC` = ?"); 

任意の

場合は、SQLエラーを追跡するために、$ stmt->エラーを使用して、私はこの1つはまた

を行く方法を知ってみましょう `ではない"ということです

+0

私に確認させてください。 –

+0

何かが間違っています...更新クエリが実行されていません! :(あなたは '良いpractice'とSQLで' $ _POST'が一緒に行かない –

+0

を案内され、私はやった。 – chris85

関連する問題