我想问一个简单的问题,我认为很简单,我的问题是下一个我要在我的网站上创建一个页面,该页面将报告数据库中的图像和描述,并且我正在使用PDO进行咨询,因此代码是接下来的内容
$stmt = $db->prepare("SELECT ruta_img_tutorial,descripcion_paso_imagen,titulo_tutorial FROM tutoriales");
//$stmt->bindParam("titulo",$tituloformula,PDO::PARAM_STR);
$stmt->execute();
// para sacar el objeto que vamos a referenciar abajo
$data=$stmt->fetch(PDO::FETCH_OBJ);// para sacar el objeto que vamos a referenciar abajo
$count=$stmt->rowCount();// cuenta las filas y las mete en un array
$db = null;
// hacer un bucle for para guardar todala la informacion
$imagen = json_decode($data->ruta_img_tutorial);
$desc_img= json_decode($data->descripcion_paso_imagen);
因此在数据中将所有对象都引用到一个obj,然后在每次获取一个对象后我总是对每个对象执行一个操作,以从Jason的解码中获取数组,我从来没有遇到过问题,但是事情是当我报告行列表中有3个,但每个中仅显示了其中的1个是如何实现的,以及我如何遍历3行并显示每一列的全部
好的,这是fechall所做的更改
try{
$db = getDB();
$arraydescrip=[];
$arrayimagen=[];
$stmt = $db->prepare("SELECT ruta_img_tutorial,descripcion_paso_imagen,titulo_tutorial FROM tutoriales");
//$stmt->bindParam("titulo",$tituloformula,PDO::PARAM_STR);
$stmt->execute();
// para sacar el objeto que vamos a referenciar abajo
$data=$stmt->fetchall(PDO::FETCH_OBJ);// para sacar el objeto que vamos a referenciar abajo
$count=$stmt->rowCount();// cuenta las filas y las mete en un array
$db = null;
// hacer un bucle for para guardar todala la informacion
$imagen = json_decode($data->ruta_img_tutorial);
$desc_img= json_decode($data->descripcion_paso_imagen);
foreach ($imagen as $value){
echo '<a><img style="width: 400px; height: 400px;" class="img-thumbnail" src="'.$value.'"></a>';
}
foreach ($desc_img as $value){
array_push($arraydescrip, $value);
}
foreach ($imagen as $value){
array_push($arrayimagen, $value);
}
print var_dump($arrayimagen);
// para que no de error de index of tenemos que poner en el for < solo sin el igual ya que para contar el array siempre tiene que ser menor que el total de array
for($j=0;$j<count($arrayimagen);$j++){
echo '<a data-fancybox href="'.$arrayimagen[$j].'"><img style="width: 400px; height: 400px;" class="img-thumbnail" src="'.$arrayimagen[$j].'"></a>';
echo'<figcaption style="width: 400px; text-align: justify;" >'.wordwrap($arraydescrip[$j],1000,"<br><br>").'</figcaption>';
}
}catch(PDOException $e) {
echo '{"error":{"text":'. $e->getMessage() .'}}';
}
不,它给了我一些注意,我不是在指obj,这是为什么我想要解决方案或者为什么它要提供该通知的报告
注意:试图在第110行获取C:\ xampp \ htdocs \ PaginaWebPirotecniaGrupo \ classes \ tutosupload.php中非对象的属性'ruta_img_tutorial'
注意:试图在第112行的C:\ xampp \ htdocs \ PaginaWebPirotecniaGrupo \ classes \ tutosupload.php中获取非对象的属性'descripcion_paso_imagen'
警告:第113行的C:\ xampp \ htdocs \ PaginaWebPirotecniaGrupo \ classes \ tutosupload.php中为foreach()提供的参数无效
警告:第116行的C:\ xampp \ htdocs \ PaginaWebPirotecniaGrupo \ classes \ tutosupload.php中为foreach()提供了无效参数
警告:在第120行的C:\ xampp \ htdocs \ PaginaWebPirotecniaGrupo \ classes \ tutosupload.php中为foreach()提供了无效的参数 array(0){}
好吧,现在我做了这行,它从数据库中获取了所有
$db = getDB();
$arraydescrip=[];
$arrayimagen=[];
$stmt = $db->prepare("SELECT ruta_img_tutorial,descripcion_paso_imagen,titulo_tutorial FROM tutoriales");
//$stmt->bindParam("titulo",$tituloformula,PDO::PARAM_STR);
$stmt->execute();
// para sacar el objeto que vamos a referenciar abajo
$data=$stmt->fetchAll(PDO::FETCH_OBJ);// para sacar el objeto que vamos a referenciar abajo
$count=$stmt->rowCount($data);// cuenta las filas y las mete en un array
$db = null;
// hacer un bucle for para guardar todala la informacion
//$desc_img= json_decode($data->descripcion_paso_imagen);
foreach ($data as $row){
$imagen = json_decode($row->ruta_img_tutorial);
foreach($imagen as $value){
echo '<a><img style="width: 400px; height: 400px;" class="img-thumbnail" src="'.$value.'"></a>';
}
}
答案 0 :(得分:4)
获取所有行而不是一行。更改:
$data=$stmt->fetch(PDO::FETCH_OBJ);
收件人:
$data=$stmt->fetchAll(PDO::FETCH_OBJ);