sql >> Database teknologi >  >> RDS >> Mysql

PHP MYSQL INSERT hjælper ingen fejl

Følgende virkede for mig:

Jeg er nødt til at påpege, at du ikke kan bruge $postedOn = now(); som en variabel til at bogføre det aktuelle tidspunkt/dato. Det skal indtastes som en del af VALUES

Dvs.:VALUES(:videoId,:username,NOW())";

Bemærk, at jeg brugte $pdo som forbindelsesvariabel.

<?php

$mysql_hostname = 'xxx';
$mysql_username = 'xxx';
$mysql_password = 'xxx';
$mysql_dbname = 'xxx';

try {

$pdo= new PDO("mysql:host=$mysql_hostname;dbname=$mysql_dbname", $mysql_username, $mysql_password); 
     $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
     exit( $e->getMessage() );
}

$sql = "SELECT MAX(videoId) AS videoId FROM videoinfo";

$stmt = $pdo->prepare($sql);   
$stmt -> execute(array());
$record = $stmt->fetch();
$videoID = $record['videoId'];

// var_dump($videoID);

$username = $_POST['submitter'];

try {
$sql = "INSERT INTO adminposts
        (videoId,username,postedOn)
        VALUES(:videoId,:username,NOW())";
$stmt = $pdo -> prepare($sql);
$stmt -> execute(array(":videoId"=> $videoID,":username"=> $username));
}

catch(PDOException $e){
// $result = "Sorry, an error occurred while editing the database.";

// will print a message of the actual error should there be one
print $e->getMessage();

    }


  1. MYSQL får alle resultater undtagen først

  2. Aktiver binær tilstand, mens du gendanner en database fra en SQL-dump

  3. Laravel rækkefølge resultater efter kolonne på polymorf tabel

  4. Mysql optimeringsværktøj