2016-10-20 15 views
0

私は自由時間にPastebin-esqueプロジェクトを作成していますが、最近ペースト用のタイトルが必要です。私はPDOを使用していますが、私はかなり前に挿入したPHPスクリプト全体をやり直さなければならなかったので、何が間違っているのか分かりません。ここでは、そもそも私のHTMLのボディは、だpaste.html:

<form action="insert.php" method="post"> 
    Title: <input type="text" name="title"> 
    <br> 
    Paste: <br> <input type="text" name="paste"> 
    <input type="submit" value="insert"> 
</form> 

そして、ここに私のinsert.phpだ:

require 'connection.php'; 

$paste = $_POST['paste']; 
$title = $_POST['title']; 
$sql = "INSERT INTO pasteinfo (title, paste) VALUES (:title, :paste)"; 
$stmt = $con->prepare($sql); 
$stmt->bindParam(':paste', $paste); 
$stmt->bindParam(':title', $title); 
$stmt->execute(); 
$con = null; 

私は本当にここで間違っているのか分かりません。ありがとう!

EDIT:connection.phpは次のようになります。

try { 
    $con = new pdo("mysql:host='';dbname='pastes'",'','','pasteinfo'); 
    echo "connected successfully"; 
} catch (PDOException $e) { 
    echo "Connection failed: " . $e->getMessage(); 
} 
+2

PHPとPDOの両方のエラー報告を有効にしてください – Ghost

+0

'connection.php'の内容を表示できますか? – Irvin

+0

@Irvin <?php \t try { \t $ con = new pdo( "mysql:host = ''; dbname = pastes"、 ''、 ''、 'pastes'); echo "connected successfully"; } catch(PDOException $ e){ \t echo "接続に失敗しました:" $ e-> getMessage(); } ?>私はそこに2つの 'ペースト'を持っているように見えますが、今80回目のようにそれを読んで気にしませんでした。それが問題だろうか? –

答えて

1

はそのような何かを試してみてください。

$stmt->bindParam(':paste', $paste, PDO::PARAM_STR, 12); 
$stmt->bindParam(':title', $title, PDO::PARAM_STR, 12); 

第三paramはデータ型であり、第四の長さです。

+1

私が言うことができる限りでは違いはありません。 –

+0

コロン(:)を削除します。 '$ stmt-> bindParam( 'paste'、$ paste、PDO :: PARAM_STR、12); $ stmt-> bindParam( 'title'、$ title、PDO :: PARAM_STR、12); ' – SebCar

+0

@SebCar同じ問題が依然として発生しています。 –

関連する問題