0

我正在尝试做一个非常简单的 php 页面并且在这里遇到了一些问题。该页面可以正常工作,但是mysql什么也没有。当我按下提交时,它会打印插入 DrinkHistory(CustomerId,DrinkId,SellerId) values('1','3','2')Your Data Inserted。但是当我登录到 phpmyadmin 时,DrinkHistory 表中没有任何内容。

代码如下

<?php
// Create connection
$con=mysqli_connect("localhost","******","*******","test");

// Check connection
if (mysqli_connect_errno($con))
  {
  echo "Mene kotii ku et mitää osaa: " . mysqli_connect_error();
  }

// Insert Data

@$a=$_POST['CustomerId'];
@$b=$_POST['DrinkId'];
@$c=$_POST['SellerId'];
if(@$_POST['submit'])
{
echo $s="insert into DrinkHistory(CustomerId,DrinkId,SellerId) values('$a','$b','$c')";
echo "Your Data Inserted";
mysql_query($s);
}

?>


<center>
<form method="post">
<table width="100%" height="245" border="1" bgcolor="#00CCFF">
<tr><td width="112" height="26">Asiakas</td>
<td width="100"><input type="radio" name="CustomerId" value="1"/>Jokirinne Niko</td>
</tr>

<tr><td rowspan="2">Juoma</td>
<form method)="post">
<td height="28"><input type="radio" name="DrinkId" value="2"/>Kalja</td>
<td height="28"><input type="radio" name="DrinkId" value="3"/>Lonkero</td>
<td height="28"><input type="radio" name="DrinkId" value="4"/>Siideri</td>
<td height="28"><input type="radio" name="DrinkId" value="5"/>Fisu</td>
<td height="28"><input type="radio" name="DrinkId" value="6"/>Tequila</td>
<td height="26"><input type="radio" name="DrinkId" value="7"/>MustikkaShotti</td>
</tr>
<td height="33"></tr>


<tr><td rowspan="3">Myyjä</td>
<td><input type="radio" name="SellerId" value="1"/>Niko Jokirinne</td>
<tr>
<td><input type="radio" name="SellerId" value="2"/>Tanya Lickorish</td>
<tr>

<tr><td height="62"><input type="submit" name="submit" value="Juo"/></td></tr>
</table>
</form>
</center>
</body>
</html>
4

2 回答 2

0

您有多个数据库库可供选择,但一旦决定,您需要坚持使用一个。您无法使用新的 mysqli 扩展启动连接:

$con=mysqli_connect("localhost","******","*******","test");

...然后尝试使用不推荐使用的旧功能查询数据库:

mysql_query($s);

如果您没有在屏幕上看到明显的错误消息,那么您可能未能配置 PHP 以在您的开发框中显示错误消息。这是您在继续之前需要修复的问题;没有错误消息的帮助是不可能编码的。这是一个简短的解释

最后,您验证您的连接是否失败:

if (mysqli_connect_errno($con))

...但您不测试您的查询是否失败。

于 2013-05-09T10:29:40.093 回答
0

您似乎忽略了连接字符串(使用 mysql_query 而不是 mysqli_query)和错误验证。试试这个:

<?php
// Create connection
$con=mysqli_connect("localhost","******","*******","test");

// Check connection
if (mysqli_connect_errno($con))
  {
  echo "Mene kotii ku et mitää osaa: " . mysqli_connect_error();
  }

// Insert Data

@$a=$_POST['CustomerId'];
@$b=$_POST['DrinkId'];
@$c=$_POST['SellerId'];
if(@$_POST['submit']) {
    echo $s = "insert into DrinkHistory(CustomerId,DrinkId,SellerId) values('$a','$b','$c')";
    if (mysqli_query($con, $s)) {
        echo "Your Data Inserted";
    } else {
        echo "Error inserting data: ".mysqli_error();
    }
}

?>
于 2013-05-09T10:30:06.957 回答