我需要建议,对不起,如果我问的话太多了。 我很困惑添加条件来准备我们在MySQL中做的语句。
示例:当用户想要在我的网站上编辑自己的文章时,MySQL中的查询就像这样。 检查用户
$sql = "select * from articles where article_id= $id AND userID = $_SESSION['id'] ";
或
$sql = "select * from articles where article_id= $id AND userID = $uid";
在MYSQLI面向对象中仍然相同。
但准备声明令我困惑
我正在为更新页面做的表单示例: 链接到更新页面:
更新文章
if(isset($_POST["article_ID"]) && !empty($_POST["article_ID"]) && isset($_POST["uid"]) && !empty($_POST["uid"])){
//获取隐藏的输入值
$id = $_POST["id"];
//验证此处的帖子
if(empty($name_err)){
$conn = new mysqli($servername, $username, $password);
$sql = "UPDATE articles SET name=? WHERE article_id=? AND uid=?";
if($stmt = $conn->prepare($sql)){
$stmt->bind_param("isi", $article_id, $name, $uid);
// Set parameters
$name = $name;
$uid = $uid;
$article_id = $article_id;
if($stmt->execute()){
//回应值或错误 } 然后在这里选择部分
if(isset($_GET["article_ID"]) && !empty(trim($_GET["article_ID"])) && isset($_GET["uid"]) && !empty(trim($_GET["uid"]))){
// Get URL parameter
$article_ID = trim($_GET["article_ID"]);
$uid = trim($_GET["uid"]);
$sql = "SELECT * FROM articles WHERE article_ID = ? AND uid = ?";
if($stmt = $conn->prepare($sql)){
$stmt->bind_param("ii", $article_ID, $uid);
$article_ID = $article_ID;
$uid = $uid;
if($stmt->execute()){
$result = $stmt->get_result();
if($result->num_rows == 1){
$row = $result->fetch_array(MYSQLI_ASSOC);
// Retrieve individual field value
$name = $row["name"];
我是在做正确的方式还是应该如何查询以及应该如何添加条件?
Html部分:
<form>
<input type="text" name="post">
</form>