Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 测试记录是否存在并选择sql查询_Php_Sql_Ajax_Pdo_Mariadb - Fatal编程技术网

Php 测试记录是否存在并选择sql查询

Php 测试记录是否存在并选择sql查询,php,sql,ajax,pdo,mariadb,Php,Sql,Ajax,Pdo,Mariadb,为什么我的代码不起作用 <?php session_start(); require_once("connecting-to-database.php"); $query = $pdo->prepare("SELECT * FROM `timetables` WHERE `who` = :who"); $query->execute(array( ":who" => $_SESSION["id"]["username"])); if ($query->rowCo

为什么我的代码不起作用

<?php
session_start();
require_once("connecting-to-database.php");

$query = $pdo->prepare("SELECT * FROM `timetables` WHERE `who` = :who");
$query->execute(array(
":who" => $_SESSION["id"]["username"]));

if ($query->rowCount() > 0) {
    $query = $pdo->prepare("UPDATE `timetables` SET `who` = :who, `day` = :day");
    $result = $query->execute(array(
    ":who" => $_SESSION["id"]["username"],
    ":day" => $_GET["timetable"]));
} else {
    $query = $pdo->prepare("INSERT into `timetables`(`who`, `day`) VALUES(:who, :day)");
    $result = $query->execute(array(
    ":who" => $_SESSION["id"]["username"],
    ":day" => $_GET["timetable"]));
}

当你的信息较少时,我可以给你更多。

学习如何使用IODKU。它可以替换您提供的所有代码

INSERT into `timetables`    (`who`, `day`)
    VALUES                  (:who,  :day)
    ON DUPLICATE KEY UPDATE `day` = :day

(它确实要求
who
PRIMARY
UNIQUE
键。)

请定义不工作。我在数据库的表中没有任何内容。。我在主网站上创建了时间表(表),该时间表(表)编码为JSON,并用GET on modify timeline.php发送。
rowCount()
是受上次删除、插入、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除、删除和删除影响的行数,或者执行UPDATE语句。因此,我必须使用什么来确定
who
上是否存在某些记录。此外,您的UPDATE更新每个人的记录(没有WHERE子句)。
INSERT into `timetables`    (`who`, `day`)
    VALUES                  (:who,  :day)
    ON DUPLICATE KEY UPDATE `day` = :day