Php 将用户输入数据与mysql数据库进行比较
所以我最近在一个市场找到了一份工作,他们有很多我需要知道的PLU。所以为了帮助我,我想做点什么来帮助我 我创建了一个数据库,其中的一些项目如下所示:Php 将用户输入数据与mysql数据库进行比较,php,mysql,database,Php,Mysql,Database,所以我最近在一个市场找到了一份工作,他们有很多我需要知道的PLU。所以为了帮助我,我想做点什么来帮助我 我创建了一个数据库,其中的一些项目如下所示: id art img plu_code 在我的index.php中,连接到数据库并选择一个随机id来显示 $query = "SELECT * FROM produto ORDER BY RAND() LIMIT 1"; if ($result = $mysqli->query($query)) { while ($row = $
id art img plu_code
在我的index.php中,连接到数据库并选择一个随机id来显示
$query = "SELECT * FROM produto ORDER BY RAND() LIMIT 1";
if ($result = $mysqli->query($query)) {
while ($row = $result->fetch_assoc()) {
$imagem_produto = $row["imagem"];
$nome_produto = $row["artigo"];
$plu_produto = $row["plu"];
echo '<center><tr>
<td><img height="150" width="150" src="'.$imagem_produto.'"></td><br>
<td>'.$nome_produto.'</td><br>
<td>'.$plu_produto.'</td>
</tr></center>';
}
$result->free();
if ($plu_produto === $_GET['U']) {
echo "Correct. Please wait!";
header("Refresh:3");
}else{
echo 'Wrong.';
}
}
?>
<html>
<body>
<form method="post">
<input type="text" name="U"/>
<input type="submit" />
</form>
</body>
</html>
$query=“按兰德从生产订单中选择*限制1”;
如果($result=$mysqli->query($query)){
而($row=$result->fetch_assoc()){
$imagem_produto=$row[“imagem”];
$nome_produto=$row[“artigo”];
$plu_produto=$row[“plu”];
回声'
“.$nome_produto.”
“.$plu_produto”
';
}
$result->free();
如果($plu_produto==$\U GET['U'])){
echo“正确,请稍候!”;
标题(“刷新:3”);
}否则{
回音“错了”;
}
}
?>
如何将用户输入与数据库进行比较,然后显示是否正确?谢谢大家! 这与将用户输入与数据库进行比较不同 你的代码
if ($_POST['U'] === $plu_produto) {
与while循环读取的最后一行进行比较,结果与预期不符
连接到数据库后,使用代码显示第一次运行时显示的所有数据。在用户输入之后,您应该从数据库本身选择与“U”匹配的相关行,其中不应该有任何while循环,但sql select本身应该只返回一行。您应该只查询特定的PLU,而不是整个表 您还需要使用
$\u POST
,而不是$\u GET
,因为表单具有method=“POST”
使用
SELECT
查询,使用WHERE
条件测试输入的代码是否存在。欢迎使用堆栈溢出!StackOverflow不是免费的编码服务。你应该会的。请更新您的问题,以显示您已在某个应用程序中尝试过的内容。有关更多信息,请参阅,并点击:)您好,我已经更新了代码,谢谢!谢谢你,先生!你建议我读什么来获得更多关于php的知识?有很多教科书和教程网站,很抱歉我没有任何具体的建议。你是如何在没有任何经验的情况下得到这份工作的?您好,这份工作与编程无关,仅供个人使用。我在一家零售市场找到了一份工作,我需要知道150个密码。所以,我现在没有用纸来读,而是用一些“游戏”来帮助我:pI被误解了,我以为这是分配给你的任务。试过这个吗?对进一步的疑问给予反馈。
if (isset($_POST['U'])) {
$plu_produto = $_POST['U'];
$stmt = $mysql->prepare("SELECT 1 FROM produto WHERE plu = ?");
$stmt->bind_param("s", $plu_produto);
$stmt->execute();
$stmt->store_result();
if ($stmt->num_rows > 0) {
echo "Correct. Please wait!";
header("Refresh:3");
}else{
echo 'Wrong.';
}
exit;
}