Foros del Web » Programando para Internet » PHP »

(consulta) Concatenar

Estas en el tema de (consulta) Concatenar en el foro de PHP en Foros del Web. ¿Qué estoy haciendo mal? Código PHP: <?php  $resultado  =  mysql_query ( "SELECT * FROM detalles ORDER BY id DESC LIMIT 3" ); while ( $row = mysql_fetch_array ( $resultado )){           "<div" .  "class='box left'>" . ...
  #1 (permalink)  
Antiguo 14/12/2010, 05:18
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
(consulta) Concatenar

¿Qué estoy haciendo mal?

Código PHP:
<?php 

$resultado 
mysql_query("SELECT * FROM detalles ORDER BY id DESC LIMIT 3");
while (
$row=mysql_fetch_array($resultado)){ 
        
"<div""class='box left'>".
            
"<div""class='box-img'>""echo <img src=admin\"".$row['img_thumb']."\">";
        
"</div>".
"</div>";
}
?>
La ruta completa es: carpeta/admin/peque/nombre_del_archivo.jpg

Donde: $row['img_thumb'] --> me indica: peque/nombre_del_archivo.jpg
  #2 (permalink)  
Antiguo 14/12/2010, 05:26
Avatar de tersipodes  
Fecha de Ingreso: noviembre-2010
Mensajes: 23
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: (consulta) Concatenar

Estas expresando mal lo que aparece por pantalla:

Código PHP:
<?php 

$resultado 
mysql_query("SELECT * FROM detalles ORDER BY id DESC LIMIT 3");
while (
$row=mysql_fetch_array($resultado)){ 
        echo 
'<div class="box left">';
        echo 
'<div class="box-img"><img src="admin\'.$row['img_thumb'].'">';
        echo '</div>';
        echo '</div>';
}
?>
Prueba así a ver si te funciona
  #3 (permalink)  
Antiguo 14/12/2010, 05:28
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: (consulta) Concatenar

Deberías indicar por que supones que está mal, osea, que es lo que falla, o que es lo que no sale como quieres, de todos modos la concatenación en si yo la veo bien, lo único que no veo bien es que usas la función echo en un string, por lo tanto no va a funcionar, y que no usas la funcion echo para devolver esos strings concatenados en la pantalla.

Un saludo
  #4 (permalink)  
Antiguo 14/12/2010, 05:47
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
Respuesta: (consulta) Concatenar

Cita:
Iniciado por Heli0s Ver Mensaje
Deberías indicar por que supones que está mal, osea, que es lo que falla, o que es lo que no sale como quieres, de todos modos la concatenación en si yo la veo bien, lo único que no veo bien es que usas la función echo en un string, por lo tanto no va a funcionar, y que no usas la funcion echo para devolver esos strings concatenados en la pantalla.

Un saludo
Te puedes explicar un poco más?

Con este código

Código PHP:
<?php  

$resultado 
mysql_query("SELECT * FROM detalles ORDER BY id DESC LIMIT 3"); 
while (
$row=mysql_fetch_array($resultado)){  
        echo 
"<div""class='box left'>"
          echo 
"<img src=\"".$row['img_thumb']."\">"
        echo 
"</div>"
        echo 
"</div>"

?>
en la carpeta "admin" funciona. y si en src pongo src=admin\ tampoco anda.

Estructura del directorio:

Carpeta raiz
admin
css
js
inc
img
index.php
imagenes.php (aca es donde esta el código que les muestro)
  #5 (permalink)  
Antiguo 14/12/2010, 06:06
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
Respuesta: (consulta) Concatenar

Tengo el siguiente error:

Notice: Use of undefined constant img_thumb - assumed 'img_thumb' in /var/www/vgdesign/portfolio.php on line 24 Notice: Use of undefined constant img_thumb - assumed 'img_thumb' in /var/www/vgdesign/portfolio.php on line 24 Notice: Use of undefined constant img_thumb - assumed 'img_thumb' in /var/www/vgdesign/portfolio.php on line 24
  #6 (permalink)  
Antiguo 14/12/2010, 06:52
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: (consulta) Concatenar

No entiendo muy bien a que te refieres con que en la carpeta admin funciona, y donde lo estas poniendo para que no funcione? y podrías explicar mejor la estructura de tus directorios? y que hay dentro de cada directorio, y donde estan las imagenes que intentas mostrar?.

Un saludo
  #7 (permalink)  
Antiguo 14/12/2010, 14:10
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
Respuesta: (consulta) Concatenar

La estructura del sitio es así:

public_html -> contenido de todos los archivos.

admin
admin/css/
admin/img/
admin/thumb/
-> imagenes que se tienen que mostrar.
admin/otrasimg/
admin/inc/
admin/js
admin/index.php
admin/conectar.php
admin/portfolio.php
-> formulario que carga las img a thumb y otrasimg y a la base de datos.

css/
css/img/
css/font/
img/
inc/
index.php
contacto.php
portfolio.php //donde va la concatenacion y se tiene que mostrar las imagenes
js
  #8 (permalink)  
Antiguo 14/12/2010, 14:43
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
Respuesta: (consulta) Concatenar

Ya lo resolví :)

Aca el código:
Código PHP:
Ver original
  1. <?php
  2. $resultado = mysql_query("SELECT * FROM detalles ORDER BY id DESC LIMIT 3");
  3. while ($row=mysql_fetch_array($resultado)){
  4.          echo "<img src=\"admin/".$row['img_thumb']."\">";
  5. }?>

era cantado que era la ruta, no concatenaba bien la carpeta contenedora.
  #9 (permalink)  
Antiguo 14/12/2010, 14:52
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
Respuesta: (consulta) Concatenar

Ahora tengo otro problema:

no me esta tomando los div y class para dar formato con css:

[HIGHLIGHT="PHP"]
<?php

$resultado = mysql_query("SELECT * FROM detalles ORDER BY id DESC LIMIT 3");
while ($row=mysql_fetch_array($resultado)){
echo "<div". "class='box left'>";
echo "<img src=\"admin/".$row['img_thumb']."\">";
echo "</div>";
echo "</div>";
}

Solucionado así:
Código PHP:
Ver original
  1. <?php  
  2.  
  3. $resultado = mysql_query("SELECT * FROM detalles ORDER BY id DESC LIMIT 3");  
  4. while ($row=mysql_fetch_array($resultado)){  
  5.         echo "<div class='box left'>";
  6.         echo "<div class='box-img'>";
  7.         echo "<img src=\"admin/".$row['img_thumb']."\">";  
  8.         echo "</div>";  
  9.         echo "</div>";  
  10. }
  11.  
  12. ?>

Me faltaba un div y a demas puse: de esto: "<div". " a esto "<div class='

Última edición por opzina; 14/12/2010 a las 14:59
  #10 (permalink)  
Antiguo 14/12/2010, 15:01
 
Fecha de Ingreso: febrero-2005
Mensajes: 626
Antigüedad: 19 años, 2 meses
Puntos: 10
Respuesta: (consulta) Concatenar

tambien puedes poner


while ($row=mysql_fetch_array($resultado)){
$variable.="contenido";
}

despues nada mas imprime $variable con echo, lo que hace es una "suma" de strings o una concatenacion tambien
  #11 (permalink)  
Antiguo 14/12/2010, 15:16
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: (consulta) Concatenar

Lo mas facil y legible en este caso es hacer echo solo de lo que realmente es necesario:

Código PHP:
Ver original
  1. <?php
  2. // Aqui va el codigo del bucle
  3. ?>
  4. <div class="caja1">
  5. <div class="caja2">
  6. <img src="ruta/<?php echo $nombre_archivo; ?>" />
  7. </div>
  8. </div>
  9. <?php
  10. // Aqui finalizas el bucle
  11. ?>
__________________
- León, Guanajuato
- GV-Foto
  #12 (permalink)  
Antiguo 14/12/2010, 15:18
 
Fecha de Ingreso: marzo-2008
Mensajes: 1.020
Antigüedad: 16 años, 1 mes
Puntos: 21
Respuesta: (consulta) Concatenar

Gracias,

son tres maneras de resolver esto, no?

Saludos.

Etiquetas: concatenar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:39.