我在空闲时间做了一个Pastebin-esque项目,昨晚我解决了我已经有几天的问题了。 (请参阅this主题)然而,当我尝试将代码提取到第二列时,我设法搞砸了所有内容,'标题'。
请阅读超链接主题并查看Odin的回答或查看以下代码。
如何让代码获取多列?
代码: viewpaste.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;
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;
}
万一你需要对我的项目进行更多的解释,我正在制作一个pastebin克隆(从头开始)并且我正在尝试制作一个页面,用户可以在其中输入任何粘贴的ID #39;想要在URL中查看并让我的代码获取该ID的所有标题和粘贴数据。这应该都是用$ _GET完成的,我已经解决了,直到我意识到我从来没有工作过,我们就是这样。
谢谢!
答案 0 :(得分:1)
只需在SELECT
查询
$result=retrieve("SELECT title, paste FROM pasteinfo WHERE id=?", array($getid));
$row=$result->fetch();
$paste=$row->paste;
$title=$row->title;