我是php的新手,需要一些帮助!
我使用一个文本框来显示表中的值,然后我希望该值能够被编辑并用于更新语句。
这个文本框当前是根据$studentId来填充的,这很好。
$conn = connection();
$sql = "SELECT * FROM students WHERE studentId=$studentId";
foreach ($conn->query($sql) as $row) {
?>
<form>
Student Name: <input name="name" type="text" method="post" value="<?php echo( htmlspecialchars( $row['name'] ) ); ?>" />
<br>
<input name="submitStudentUpdate" type="submit" value="Update" />
</form>
<?php
}
connection();正在从另一个页面提供。
我需要的值
Student Name: <input name="name" type="text" method="post" value="<?php echo( htmlspecialchars( $row['name'] ) ); ?>" />
我想从这个表单中检索值,并发布到另一个页面,以便在更新语句中使用,但我该如何获得它?
我想可能是:
if (isset($_POST['name'])) {
echo $_POST['name'];
}
因此,目前,文本框已填充
[Bob]
我希望能够将其更改为,例如
[鲍比]
点击提交按钮并检索该值。
我正在使用PDO。
希望这是有意义的,任何帮助都非常感谢。谢谢。
您没有在表单中定义方法,因此它默认为获取
因此,您应该能够通过$_GET['name']
获得您的价值
我希望我对你的理解是正确的。
<?PHP
if(isset($_GET['name'])) {
$sql = "UPDATE students SET name = '".mysql_real_escape_string($_GET['name'])."' WHERE studentID = '".(int)$_GET['studentId']."' LIMIT 1";
// or with pdo prepared statements (more secure)
$stmt = $conn->prepare("UPDATE students SET name = ? WHERE studentID = ? LIMIT 1");
$stmt->execute(array($_GET['name'], $_GET['studentId']));
}
$conn = connection();
$sql = "SELECT * FROM students WHERE studentId=$studentId";
foreach ($conn->query($sql) as $row) {
?>
<form>
Student Name: <input name="name" type="text" method="post" value="<?php echo( htmlspecialchars( $row['name'] ) ); ?>" />
<br>
<input type="hidden" name="id" value="<?php echo $studentId; ?>">
<input name="submitStudentUpdate" type="submit" value="Update" />
</form>
<?php
}
?>
$conn = connection();
$sql = "SELECT * FROM students WHERE studentId=$studentId";
if( isset($_GET['studentId']) )
{
"UPDATE FROM students SET name = '".$_POST['name']."' WHERE studentId=".$_POST['studentId'];
}
foreach ($conn->query($sql) as $row) {
?>
<form action="?studentId=<?php echo $row['studentId']; ?>" method="post">
Student Name: <input name="name" type="text" method="post" value="<?php echo( htmlspecialchars( $row['name'] ) ); ?>" />
<br>
<input name="submitStudentUpdate" type="submit" value="Update" />
</form>
<?php
}