首頁  >  文章  >  後端開發  >  用PDO查询数据库内容是这样查吗?

用PDO查询数据库内容是这样查吗?

WBOY
WBOY原創
2016-06-20 12:41:331008瀏覽

为什么我显示这个这个错误?
( ! ) Parse error: syntax error, unexpected 'foreach' (T_FOREACH) in D:\wamp\www\cxblog.php on line 4
这个查询出来是个数组吗?我只想把数据库里面的值取出来 不要数组形式的  应该怎么写呢
 $pdo=new PDO("mysql:host=localhost;dbname=t1","root","");
 $sql=$pdo->query('select * from blog')
 foreach($sql as $row){ 
  print_r($row); 
  } 
?>


回复讨论(解决方案)

PDOStatement PDO::query ( string statement )
mixed PDOStatement::fetch ( [int fetch_style [, int cursor_orientation [, int cursor_offset]]] )
array PDOStatement::fetchAll ( [int fetch_style [, int column_index]] )


PDOStatement PDO::query ( string statement )
mixed PDOStatement::fetch ( [int fetch_style [, int cursor_orientation [, int cursor_offset]]] )
array PDOStatement::fetchAll ( [int fetch_style [, int column_index]] )


英文的看不懂

PDOStatement PDO::query ( string statement )
mixed PDOStatement::fetch ( [int fetch_style [, int cursor_orientation [, int cursor_offset]]] )
array PDOStatement::fetchAll ( [int fetch_style [, int column_index]] )


我知道问题了  我前面$sql没有加结束的分号  现在显示出来的是一个数组  但是我只想要数据

改成这样.

<?php $pdo=new PDO("mysql:host=localhost;dbname=t1","root",""); $sth=$pdo->query('select * from blog') $result = $sth->fetchall(PDO::FETCH_ASSOC); foreach($result as $k=>$v){    print_r($v);}?>

改成这样.

<?php $pdo=new PDO("mysql:host=localhost;dbname=t1","root",""); $sth=$pdo->query('select * from blog') $result = $sth->fetchall(PDO::FETCH_ASSOC); foreach($result as $k=>$v){    print_r($v);}?>


试了一下提示这个错误  怎么回事?
( ! ) Parse error: syntax error, unexpected '$result' (T_VARIABLE) in D:\wamp\www\cxblog2.php on line 4

改成这样.

<?php $pdo=new PDO("mysql:host=localhost;dbname=t1","root",""); $sth=$pdo->query('select * from blog') $result = $sth->fetchall(PDO::FETCH_ASSOC); foreach($result as $k=>$v){    print_r($v);}?>


这样得到的还是数组形式的  我只想得到值

当然是数组形式的!
你 select  * from blog
这个 * 表示的是表中的所有字段,php 不可能越俎代庖的将他们链接成一个值
即便表中只有一个字段,但 php 也是不会知道的
因为所有的解释权在你,而不是在 php

当然是数组形式的!
你 select  * from blog
这个 * 表示的是表中的所有字段,php 不可能越俎代庖的将他们链接成一个值
即便表中只有一个字段,但 php 也是不会知道的
因为所有的解释权在你,而不是在 php


我这个表只有一列就是content列  我改成select content from blog 还是不行啊

我已经说过了,php 对于数据库查询,总是返回数组的

$pdo=new PDO("mysql:host=localhost;dbname=t1","root",""); $sth=$pdo->query('select * from blog') $result = $sth->fetchall(PDO::FETCH_ASSOC); foreach($result as $k=>$v){    echo $v['content']; //这样不就是但值了吗?}

我已经说过了,php 对于数据库查询,总是返回数组的

$pdo=new PDO("mysql:host=localhost;dbname=t1","root",""); $sth=$pdo->query('select * from blog') $result = $sth->fetchall(PDO::FETCH_ASSOC); foreach($result as $k=>$v){    echo $v['content']; //这样不就是但值了吗?}


哦哦可以了 谢谢 我再好好看看
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn