2016-10-18 2 views
0

그래서 저는 PHP와 서버 관리를 배우기 위해 제 시간에 PHP Pastebin-esque 프로젝트를 진행하고 있으며 많은 문제가 있습니다. 그 (것)들을 해결할 수 있었다. 지금까지 수집 한 정보로 스스로 재시작하기로 결정하고이 코드를 함께 던졌습니다.

<?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에보고에 관심이 무엇 페이스트의 ID을 입력 할 수 있으며이는 pasteinfo 행을 표시하는 시스템이다 붙여 넣기 자체를 보유하는 행입니다. 그들이 가지고 있어야하는 형식은 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이고 tag) – 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

하하하하, index.php 코딩 즐기기. – Odin