PHP-更新SQL语句mysqli数据库+;变量
在本次更新之前,我们设法找到了SELECT语句,但更新仍然存在问题——这是php代码段上方的一个表单,应该填写$email$password和$namePHP-更新SQL语句mysqli数据库+;变量,php,html,mysqli,Php,Html,Mysqli,在本次更新之前,我们设法找到了SELECT语句,但更新仍然存在问题——这是php代码段上方的一个表单,应该填写$email$password和$name <?php if ($_SERVER['REQUEST_METHOD'] == 'POST') { $name = $_REQUEST['teamname']; $email = $_REQUEST['email']; $password = (md5($_REQUEST['password'])); $query = "U
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$name = $_REQUEST['teamname'];
$email = $_REQUEST['email'];
$password = (md5($_REQUEST['password']));
$query = "UPDATE users SET email = ?,password = ? WHERE name = ?";
$statemnt = $conn->prepare($query);
$statemnt->bind_param('sss',$email,$password,$name);
$statemnt->execute(); echo $name,$email,$password; var_dump();
$statemnt->close(); $conn->close(); } ?>
团队名称:
在脚本的开头有这样一个选项:$selectedOption=$\u POST[“mySelect”]代码>
在您的代码中(尤其是在您的
中),我看不到任何名为“mySelect”
将此字段添加到表单中,问题就会得到解决
有助于进行大量调试。您对SQL注入持开放态度。这是一个很大的否。请考虑使用准备好的语句、PDO或清除您的输入手册。M5也不是最安全的方法来散列密码。考虑使用PHP的内置代码“PaseWordsHASH”(<代码> >函数$电子邮件,$密码,打印出$密码,并给我1个错误PHP警告:VARA DUMPER()期望至少1个参数,0在/home /Atdia/PultAuthHTML/ADM.php上的第201行201行是VARYDUMPER(<代码> VARYDUMPE);<代码>期望变量作为参数,正如其名称所示,它转储变量的内容。你看过文件了吗?我提供了一个指向它的链接。编辑了我的邮件,其中包含了在上述建议之后我遇到问题的部分-抱歉,新到了站点空字符串(32)(显示$password)空值为var_dump($name)var_dump($password)var_dump($email)不确定为什么当我点击更新按钮时,这些变量没有更新,因为它在IF语句中-试图在表单的一个页面上执行此操作?
<form method="post" action="">Team Name:<br>
<input type="text" name="teamname" value="<?php echo $name;?>">
<br>Email:<br><input type="text" name="email" value="<?php echo $email;?>">
<br>Password:<br><input type="text" name="password" value="">
<br><br><input type="Submit" value="Update the Record" name="Submit">
</form>
<?php
if (isset($_POST['submit'])) {
$sql = $conn->prepare("UPDATE users SET email=? , password=? WHERE team=?");
$postedemail=$_POST['teamemail'];
$postedpassword= $_POST['teampassword'];
$sql->bind_param("ssi",$postedemail,$postedpassword,$_POST["mySelect"]);
if($sql->execute()) {
$success_message = "Edited Successfully";
} else {
$error_message = "Problem in Editing Record";
}
var_dump($postedpassword);
var_dump($postedemail);
}
$stmt = $conn->prepare("SELECT team, name, email, password FROM users WHERE team = ?");
$stmt->bind_param("i", $_POST["mySelect"]);
$stmt->execute();
$result = $stmt->get_result();
if($result->num_rows === 0) exit('No rows');
while($rows = $result->fetch_assoc()) {
$name = $rows['name'];
$email = $rows['email'];
$password = $rows['password'];
}
var_dump($password);
var_dump($name);
var_dump($email);
var_dump($_POST['mySelect']);
$stmt->close();
?>
<?php if(!empty($success_message)) { ?>
<div class="success message"><?php echo $success_message; ?></div>
<?php } if(!empty($error_message)) { ?>
<div class="error message"><?php echo $error_message; ?></div>
<?php } ?>
<form name="frmUser" method="post" action="">
<label>NAME:</label>
<input type="text" name="teamname" class="txtField" value="<?php echo $name?>">
<label>EMAIL:</label>
<input type="text" name="teamemail" class="txtField" value="<?php echo $email?>">
<label>PASSWORD</label>
<input type="text" name="teampassword" class="txtField" value="">
<input type="submit" name="submit" value="Submit" class="demo-form-submit">
</form>