Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

PHP MYSQL INSERT कोई त्रुटि नहीं मदद करता है

निम्नलिखित ने मेरे लिए काम किया:

मुझे यह बताना है कि आप $postedOn = now(); . का उपयोग नहीं कर सकते हैं वर्तमान समय/तिथि पोस्ट करने के लिए एक चर के रूप में। इसे VALUES . के भाग के रूप में दर्ज करने की आवश्यकता है

यानी:VALUES(:videoId,:username,NOW())";

ध्यान दें कि मैंने $pdo . का उपयोग किया है कनेक्शन चर के रूप में।

<?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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. लाने पर Mysql PDO अधिकतम LONGBLOB डेटा लंबाई

  2. MySQL:तालिका में प्रत्येक समूह के लिए nवां उच्चतम मान प्राप्त करें

  3. हाइबरनेट OneToOne आलसी लोडिंग और कैस्केडिंग

  4. अधिकतम (date_field) वाले आईडी के आधार पर समूह

  5. MySQL LOG2 () फ़ंक्शन - किसी मान का बेस -2 लघुगणक लौटाएं