Lo siguiente funcionó para mí:
Tengo que señalar que no puedes usar $postedOn = now();
como una variable para publicar la hora/fecha actual. Debe ingresarse como parte de los VALUES
Es decir:VALUES(:videoId,:username,NOW())";
Tenga en cuenta que usé $pdo
como la variable de conexión.
<?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();
}