PHP MYSQL PDO。当我执行 SELECT 时,它不会 return 所有 table 字段
PHP MYSQL PDO. When I do a SELECT, it doesn't return all table fields
当我尝试在 mysql 数据库中执行我的 SUCCESSFUL Select 时,它 returns 我所有的字段,除了第一个。 (是的,听起来很奇怪)。
而如果 select 只有 returns 1 个字段,它不会打印任何值。
如果 select returns 2 个值,将只打印 1 个(第 2 个)。
等等
我不明白为什么会这样!
$vector=array();
$sql="SELECT * FROM products";
$con=new DataBase();
$resultado=$con->selectQuery($sql,$vector); //you have this funtion below
if($resultado!=null){
if (!$resultado->fetchColumn()){
//no hay productos
$cadena="No products in our web";
}
else{
$cadena=$resultado; //IF ALL HAVE GONE CORRECT
}
}
else{
$cadena="Sorry, we are having some problems. Try again later.";
}
if (is_string($cadena))
{
//some code.
}
else
{
///////////////////////
// HERE I PROCEED TO TAKE THE DATA OF THE SELECT.
foreach ($cadena as $row)
{
$prods .="$row[price]";
}
}
//////////////////////////////////////////////
//selectQuery FUNCTION...
public function selectQuery($sql,$vector){
//select
if($this->connect()){//data to connect to the DB. It works well.
$sentencia = $this->db->prepare($sql);
$sentencia->execute($vector);
$this->disconnect();
}else{
$sentencia=null;
}
//$jjj=$sentencia->fetchAll(); //s'ha de fer si no a vegades dona error
//print_r($jjj) ; exit;
return $sentencia;
}
检查文档 fetchColumn() - http://php.net/manual/en/pdostatement.fetchcolumn.php
您只获取了一列而不是所有列。使用 fetchAll() 函数 select 所有列 fetchAll() - http://php.net/manual/en/pdostatement.fetchall.php
当我尝试在 mysql 数据库中执行我的 SUCCESSFUL Select 时,它 returns 我所有的字段,除了第一个。 (是的,听起来很奇怪)。
而如果 select 只有 returns 1 个字段,它不会打印任何值。 如果 select returns 2 个值,将只打印 1 个(第 2 个)。 等等
我不明白为什么会这样!
$vector=array();
$sql="SELECT * FROM products";
$con=new DataBase();
$resultado=$con->selectQuery($sql,$vector); //you have this funtion below
if($resultado!=null){
if (!$resultado->fetchColumn()){
//no hay productos
$cadena="No products in our web";
}
else{
$cadena=$resultado; //IF ALL HAVE GONE CORRECT
}
}
else{
$cadena="Sorry, we are having some problems. Try again later.";
}
if (is_string($cadena))
{
//some code.
}
else
{
///////////////////////
// HERE I PROCEED TO TAKE THE DATA OF THE SELECT.
foreach ($cadena as $row)
{
$prods .="$row[price]";
}
}
//////////////////////////////////////////////
//selectQuery FUNCTION...
public function selectQuery($sql,$vector){
//select
if($this->connect()){//data to connect to the DB. It works well.
$sentencia = $this->db->prepare($sql);
$sentencia->execute($vector);
$this->disconnect();
}else{
$sentencia=null;
}
//$jjj=$sentencia->fetchAll(); //s'ha de fer si no a vegades dona error
//print_r($jjj) ; exit;
return $sentencia;
}
检查文档 fetchColumn() - http://php.net/manual/en/pdostatement.fetchcolumn.php
您只获取了一列而不是所有列。使用 fetchAll() 函数 select 所有列 fetchAll() - http://php.net/manual/en/pdostatement.fetchall.php