[英]Error with php variables, i don't understand
我的 php 代码中的 var 有问题.. 我不明白是怎么回事
有我的代码:
<fieldset>
<?
if(isset($_POST['requete']) && $_POST['requete'] != NULL){
include "connexion.inc";
$reponse = $bdd->query('SELECT id_piece, piece
FROM tbl_piece
WHERE piece = '.$requete.' ');
while($donnees = $reponse->fetch()){
echo $donnees['id_piece'];
}
}
else{
echo $requete;
}
?>
<form method="post" action="standard.php">
<input type="text" name="requete">
<input type="submit" value="Rechercher">
</form>
</fieldset>
所以,在我的网页上,只有一个带有按钮的文本框,用于验证和“测试”到文本框上,是的,我明白了,我的 var 没问题,一切都好我的脚本正在等待我的关键字在我的表格中找到好的,我写了“ AD202 ”,它出现在我的表中,然后单击我的按钮,然后出现此错误
Notice: Undefined variable: requete in /home/libtronic/www/html/standard.php on line 52
和 .. 我不明白如何保持我的 var 声明并分配了我的“AD202”关键字
你可以帮帮我吗 :/ ?
错误不言自明,您的变量$requete
未在代码中的任何位置定义。
我假设您指的是$_POST['requete']
,要定义它,您需要添加如下一行:
$requete = $_POST['requete'];
并且为了防止 MySQL 注入,您可以使用mysqli_real_escape_string
:( $link
是连接参数)
$requete = mysqli_real_escape_string($link, $_POST['requete']);
注意:您需要在使用变量之前定义它,这意味着在$reponse = ...
或者,如果你不想定义它,你可以直接使用$_POST['requete']
,但是它可能有 SQL 注入的风险。
您还没有声明 $requete,只需在查询之前添加它:
$requete = $_POST["requete"];
您尝试使用变量而不先定义它。 此外,在您的 php 代码中使用准备好的语句以避免令人讨厌的意外(sql注入)会更安全和更好的做法
<fieldset>
<?php
if(isset($_POST['requete']) && $_POST['requete'] != NULL){
include "connexion.inc";
/* define the variable!! */
$requete=$_POST['requete'];
$reponse = $bdd->query('SELECT id_piece, piece
FROM tbl_piece
WHERE piece = '.$requete.' ');
while($donnees = $reponse->fetch()){
echo $donnees['id_piece'];
}
} else{
echo $requete;
}
?>
<form method="post" action="standard.php">
<input type="text" name="requete">
<input type="submit" value="Rechercher">
</form>
</fieldset>
你的问题是
$reponse = $bdd->query('SELECT id_piece, piece
FROM tbl_piece
WHERE piece = '.$requete.' ');
要么你捕获 $requete
$requete=$_POST['$requete'];
在声明之前或
你的线路应该是
$reponse = $bdd->query("SELECT id_piece, piece
FROM tbl_piece
WHERE piece = '$_POST[requete]'");
这是不建议的,因为它对 SQL 注入开放。
理想情况下,您应该在将任何传入变量 _POST 或 _GET 用于进一步的功能之前对其进行清理。并且 $reponse->fetch() 应该与 $response->fetch_assoc() 更好
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.