2016-10-18 18 views
0

私はフリータイムにPHP Pastebin-esqueプロジェクトに取り組んで、PHPとサーバー管理を学びました。私はたくさんの問題を抱えています。それらを解決することができました。私はこれまでに収集した情報を自分のもとで一からやり直すことに決め、このコードを一緒に投げました。私はこのコードで実現しようとしている何

<?php 
    require 'connection.php'; 
     $getid = $_GET["id"]; 
     $sql = 'SELECT paste FROM pasteinfo WHERE id=:id'; 
     $stmt = $con->prepare($sql); 
     $stmt->bind_param(':id', trim($_GET["id"], PDO::PARAM_INT)); 
     $stmt->execute(); 

     while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
      echo $row['paste']; 
     } 

?> 

は、ユーザーが、彼らはURLで見ることに興味を持っているとそれがpasteinfo行を表示していどんなペーストのIDを入力することができるシステムで、どのペースト自体を保持する行です。彼らが持っているフォーマットはviewpaste.php?id =(ユーザ入力)です。

このコードを修正するにはどうすればよいですか?私はあなたがコメントを入れてしまう可能性のあるコードを説明してもらえれば幸いです。ありがとう!

+0

PDOまたはmysqliのは言います? http://php.net/manual/en/pdostatement.bindparam.php!= http://php.net/manual/en/mysqli-stmt.bind-param.phpまた使い方は逆です: '$ sth- > bindParam( ':カロリー、$カロリー、PDO :: PARAM_INT); '。 'execute'は' $ stmt-> execute(); 'のような関数です。あるいは、あなたは '$ stmt-> execute(array( ':id' => trim($ _ GET [" id "])));'を実行するだけでバインドすることができます(これはタグ付きPDOであり、 – chris85

+0

追加の注意点として、あなたはインデックスを決して埋めることがないように 'id'を選択しないでください。 'echo $ row ['paste'];'。アップデートごとに 'bind_param'は間違っていますが、PDOリンクを見てください。 – chris85

+0

@ chris85これらすべての変更を行い、OPのコードを更新しましたが、何も得られません。エコーはおそらく異なった形式か何かをフォーマットする必要がありますか? –

答えて

0

これを試してください。データを取得するために

connection.php

try{ 
$db = new PDO('mysql:host=localhost;dbname=database_name;charset=utf8mb4', 'database_username', 'database_password'); 
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); 
} 
catch (PDOException $ex){ 
echo $ex->getMessage();return false; 
} 

function retrieve($query,$input) { 
global $db; 
$stmt = $db->prepare($query); 
$stmt->execute($input); 
$stmt->setFetchMode(PDO::FETCH_OBJ); 
return $stmt; 
} 

検索ページ取得()関数を呼び出し、display.php

require 'connection.php'; 
$getid = $_GET["id"]; 
$result=retrieve("SELECT paste FROM pasteinfo WHERE id=?",array($getid)); 
$row=$result->fetch(); 
//To get paste column of that id 
$paste=$row->paste; 
echo $paste; 
+0

最後の投稿であなたをタグに忘れた –

+0

いいえ違うファイル – Odin

+0

haha​​hahaha、index.phpのコーディングをお楽しみください。 – Odin

関連する問題