1

_POST メソッドを使用してデータベースにデータを挿入すると、PHP コードは空白のレコードを挿入しますが、_GET を使用するとすべて正常に動作します。

アドバイスありがとうございます。

<?php
$con=mysqli_connect("localhost","root","*******","student");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$sql="INSERT INTO Student (textnames, fathername, mom, occu, homenum, paddress, offcontact, Course, District, State, pincode, emailid, dob, mobileno)
VALUES
('$_POST[textnames]','$_POST[fathername]','$_POST[mom]','$_POST[occu]','$_POST[homenum]','$_POST[paddress]','$_POST[offcontact]','$_POST[Course]','$_POST[District]','$_POST[State]','$_POST[pincode]','$_POST[emailid]','$_POST[dob]','$_POST[mobileno]')";

if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
echo "Successfully Added Record";

mysqli_close($con);
?>

これを回避する方法についての提案.....

4

6 に答える 6

0

経験則として、phpinfo を使用して PHP 変数の可用性を確認することをお勧めします (これは Web サーバーの構成に関連しています)。

試して追加してください:

echo phpinfo();
exit;

あなたの直前に

 if (!mysqli_query($con,$sql))
于 2013-10-16T03:59:41.647 に答える
0

その理由は、おそらく get と同じではない投稿を行っているからです。

'$_POST[textnames]'// is wrong
'$_POST["textnames"]'// is correct

他のすべてのものと同じです。引用符を使用せずにこれらの値を取得するには、引用符を使用する必要がありtextnamesますGETPOST

于 2013-10-16T04:10:44.463 に答える
0

$_POST をローカル変数に初期化し、次のようにクエリを使用してみてください

    <?php
$a=$_POST['textname'];
$b=$_POST['fathername'];
$c=$_POST['mom'];'
$d=$_POST['occu'];
$e=$_POST['homenum'];
$f=$_POST['paddress'];
$g=$_POST['offcontact'];
$i=$_POST['Course'];
$j=$_POST['District'];
$k=$_POST['State'];
$l=$_POST['pincode'];
$m=$_POST['emailid'];
$o=$_POST['dob'];
$p=$_POST['mobileno']
$con=mysqli_connect("localhost","root","*******","student");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$sql="INSERT INTO Student (textnames, fathername, mom, occu, homenum, paddress, offcontact, Course, District, State, pincode, emailid, dob, mobileno) VALUES('$a','$b','$c','$d','$e','$f','$g','$i','$j','$k','$l','$m','$o','$p')";

if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
echo "Successfully Added Record";

mysqli_close($con);
?>
于 2013-10-16T04:22:54.897 に答える
0

それは_REQUESTで動作します

<?php
$con=mysqli_connect("localhost","root","********","student");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$sql="INSERT INTO Student (textnames, fathername, mom, occu, homenum, paddress, offcontact, Course, District, State, pincode, emailid, dob, mobileno)
VALUES
('$_REQUEST[textnames]','$_REQUEST[fathername]','$_REQUEST[mom]','$_REQUEST[occu]','$_REQUEST[homenum]','$_REQUEST[paddress]','$_REQUEST[offcontact]','$_REQUEST[Course]','$_REQUEST[District]','$_REQUEST[State]','$_REQUEST[pincode]','$_REQUEST[emailid]','$_REQUEST[dob]','$_REQUEST[mobileno]')";
if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
echo "Successfully Added Record";

mysqli_close($con);
?>
于 2013-10-16T04:56:37.940 に答える
0

まず、フォームが値を送信しているかどうかを確認します

if(isset($_POST["submit"]))
     {
       Your insert query here

      }
 also in form try using following code
 <form methode = "POST" action = "">
 </form>
于 2013-10-16T04:30:43.990 に答える