php执行两次并记录两次

时间:2017-09-28 10:31:27

标签: php pdo

我对此脚本有疑问

index.html

它在我的主类

中调用此函数
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
header('Content-type: application/json');
header('Access-Control-Allow-Origin: *');
require_once("./dbconf.php");
$esmaior = new ESMAIOR($DB_con);
session_start();
$aulaAssist = 'teste';
if($aulaAssist != null){
    $idProfessorA = 23;
    $idProfessorB = 24;
    $dataA = '2017-10-01';
    $dataB = '2017-10-01';
    $discA = 23;
    $discB =24;
    $anoA = '1º';
    $anoB =  '1º';
    $ret = $esmaior->newAulaAssistida($idProfessorA, $idProfessorB, $dataA, $dataB, $discA, $discB, $anoA, $anoB);
    echo json_encode($ret);
}

因此,当我检查我的数据库时,我总是在相同的日期时间两次相同的项目。 我使用过Firefox,Chrome,IE,Edge,所有这些都有相同的行为。 有人可以帮我解决这个问题吗?

由于

1 个答案:

答案 0 :(得分:3)

我实际上从未query d和execute d,但这两个函数execute都是一个查询,所以你应该只使用其中一个。 execute旨在与预先准备的语句一起使用。所以你可以这样做:

$stmt = $this->db->prepare("INSERT INTO aulasassistidas (dataRegistado) VALUE (NOW());");
$result= $stmt->execute();

或只是:

$result = $this->db->query("INSERT INTO aulasassistidas (dataRegistado) VALUE (NOW());");
if (!$result) {