Foros del Web » Programando para Internet » PHP »

porque no funciona este codigo php

Estas en el tema de porque no funciona este codigo php en el foro de PHP en Foros del Web. no entiendo porque no funciona este codigo lo que quiero conseguir es que cuando una imagen no contenga nada no muestre nada en pantalla estas ...
  #1 (permalink)  
Antiguo 21/06/2011, 03:24
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
porque no funciona este codigo php

no entiendo porque no funciona este codigo lo que quiero conseguir es que cuando una imagen no contenga nada no muestre nada en pantalla estas imagenes las guarda en mi db y las muestro en pantalla asin:
Código PHP:
Ver original
  1. $contar=count($_FILES['archivo']['tmp_name'])
  2. while($i=0; $i=>$contar; $i++;){
  3.     $producto1=$row['producto1'];
  4.     $producto2=$row['producto2']
  5.     $precio=$row['precio'];
  6.  
  7. echo $precio'<br>';
  8.    echo $row['$precio'].'<br/>';
  9.    echo empty($producto1[$i]) ? '' : "<img src='tienda_online/".$producto1."' >";
  10.    echo empty($producto2[$i]) ? '' : "<img src='tienda_online/".$producto2."' >";
  11. }
algun experto me puede corregir?
  #2 (permalink)  
Antiguo 21/06/2011, 03:36
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Revisa el código fuente que genera tu script
  #3 (permalink)  
Antiguo 21/06/2011, 03:41
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

me da un error de sintaxis inesperado en el bucle while creo pero esque no lo encuentro alguna ayuda tampoco puedo ver el codigo fuente porque no funciona el script solo veo el error
  #4 (permalink)  
Antiguo 21/06/2011, 03:49
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Pon el error, un saludo no te preocupes ahora lo miramos!
  #5 (permalink)  
Antiguo 21/06/2011, 03:53
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

bueno primero agradecerte que colabores aqui esta el codigo de error:

Parse error: syntax error, unexpected T_WHILE in C:\wamp\www\tienda_online\mostrar_tienda_online.ph p
on line 24
  #6 (permalink)  
Antiguo 21/06/2011, 03:54
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Nada,

$contar=count($_FILES['archivo']['tmp_name'])

Creo que te falta un ;

$contar=count($_FILES['archivo']['tmp_name']);

Un saludo!
  #7 (permalink)  
Antiguo 21/06/2011, 03:57
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

amigo ahora en la linea del count me da este error:

Parse error: syntax error, unexpected ';' in C:\wamp\www\tienda_online\mostrar_tienda_online.ph p on line 24
  #8 (permalink)  
Antiguo 21/06/2011, 04:02
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Como editas tu PHP? tienes muchos errores, te recomiendo NETBEANS para PHP.

Código PHP:
Ver original
  1. $contar=count($_FILES['archivo']['tmp_name']);
  2.     for($i=0; $i>=$contar; $i++){
  3.     $row=mysql_fetch_assoc($sql);
  4.         $producto1=$row['producto1'];
  5.         $producto2=$row['producto2'];
  6.         $precio=$row['precio'];
  7.      
  8.         echo $precio . '<br>';
  9.        echo $row['$precio'].'<br/>';
  10.        echo empty($producto1[$i]) ? '' : "<img src='tienda_online/".$producto1."' >";
  11.        echo empty($producto2[$i]) ? '' : "<img src='tienda_online/".$producto2."' >";
  12.     }

Un saludo!
  #9 (permalink)  
Antiguo 21/06/2011, 04:07
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

amigo si el punto y como ya lo puse; y me dio el error que te postee.
lo probe con las dos formas con ; y sin ;

alguna ayuda
  #10 (permalink)  
Antiguo 21/06/2011, 04:08
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Amigo mio, has visto la diferencia entre tu código y el que te he colocado?

He corregido 5 errores si no recuerdo mal, también hay un cambio de while a for.

Un saludo!
  #11 (permalink)  
Antiguo 21/06/2011, 04:18
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

perdona pero ahora me da este error:
Parse error: syntax error, unexpected T_DOUBLE_ARROW, expecting ';' in
  #12 (permalink)  
Antiguo 21/06/2011, 04:19
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Tendrías que revisar tu código debugar, y hacerlo por partes, no tiene más.. date cuenta que había errores básicos, si quieres aprender tómatelo con calma.

Un saludo!
  #13 (permalink)  
Antiguo 21/06/2011, 04:32
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

tienes razon miktrv pero esque es un codigo muy basico he probado de todas formas no tengo mas es simplemente un codigo que muestra los resultados de mi db en pantalla y quiero que si una imagen esta vacio no muestre nada simplemente esto me podras ayudar?

el $sql lo tengo asin:

Código PHP:
Ver original
  1. $sql = mysql_query("SELECT * FROM tienda_online WHERE id_producto='".$_GET['id']."'");
ya que le da a un enlace para mostrar los resultados de ese enlace
  #14 (permalink)  
Antiguo 21/06/2011, 04:44
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

esta es la pagina donde muestro los resultados cuanda clickean el enlace del producto que quieren ver:

Código PHP:
Ver original
  1. //conexion db
  2.   $sql = mysql_query("SELECT * FROM tienda_online WHERE id_tienda='".$_GET['id']."'");
  3.    $contar=count($_FILES['archivo']['tmp_name']);
  4. for($i=0; $i=>$contar; $i++){
  5. $row=mysql_fetch_assoc($sql);
  6.      $precio=$row['precio'];
  7.     $producto1=$row['producto1'];
  8.     $producto2=$row['producto2'];
  9.   echo $precio.'<br/>';
  10.    echo empty($producto1[$i]) ? '' : "<img src='tienda_online/".$producto1."' >";
  11.    echo empty($producto2[$i]) ? '' : "<img src='tienda_online/".$producto2."' >";
  12. }
  #15 (permalink)  
Antiguo 21/06/2011, 04:52
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Vale, vamos por partes:

Primero revisa la seguridad de tu código SQL, metes un $_GET sin filtrar, que pasa si metes por ejemplo... " "= *"

Además debes de comprobar de que el id que menten es un número si es autoincrement, y comprobar que el id existe dentro de tu bbdd.

Ahora, para mostrar los resultados:

Código PHP:
Ver original
  1. $ruta-directorio-imagenes = 'images/';
  2.  
  3. //aqui faltaria un if, etc para comprobar qiue existe
  4. $id = existe($_GET['id']);
  5.  
  6. $resul = mysql_query("SELECT * FROM tienda_online WHERE id_tienda='". $id ."'");
  7. while($row = mysql_fetch_array($resul)) {
  8.  
  9. echo $row['precio'] . '<br />';
  10.  
  11. if(!empty($row['pon-aqui-el-nombre-de-tu-columna-de-imagen']) and file_exists($ruta-directorio-imagenes . $row['pon-aqui-el-nombre-de-tu-columna-de-imagen'])) {
  12.  
  13. echo '<img src="' . $ruta-directorio-imagenes . $row['pon-aqui-el-nombre-de-tu-columna-de-imagen'] . '">';
  14.  
  15. }
  16.  
  17.  
  18. }

Prueba esto y revisa las columnas!

Un saludo!
  #16 (permalink)  
Antiguo 21/06/2011, 04:59
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

lo probare pero una cosita yo hasta ahora me funciona bien sin usar la funcion empty osea que lo quiero cambiar porque mi problema es qui solo hay una foto que no se vea la foto rota pero no se si lo estoy haciendo de la manera correcta?
  #17 (permalink)  
Antiguo 21/06/2011, 05:06
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Te faltaría además comprobar que exista el fichero fisico de la imagen, la manera parece correcta, aunque el código no esta muy "limpio". y tiene errores de sintaxis.

Un saludo!
  #18 (permalink)  
Antiguo 21/06/2011, 05:18
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
miktrv pero yo mi codigo solo quiero que haga eso que si no hay imagen que no muestre nada que errores ves lo hice como me dijistes antes

no consigo hacer que funcione el codigo que me distes lo he dejado como estaba no me puedes ayudar a completar mi codigo estoy ya saturado

como tendria que hacer el if para comprobar que existe el fichero?

Última edición por GatorV; 21/06/2011 a las 07:24
  #19 (permalink)  
Antiguo 21/06/2011, 07:51
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Creo que no estas preparado para hacer ese script.

Hay una sección donde puedes pedir que alguien lo haga por ti (EMPLEO). Creo que me he esforzado mucho en ayudarte. No es cuestión de ponerse nervioso y exigir.

Un saludo!
  #20 (permalink)  
Antiguo 21/06/2011, 08:21
 
Fecha de Ingreso: mayo-2011
Mensajes: 187
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: porque no funciona este codigo php

solo intento aprender bueno me lo mirare con tiempo que ahora estoy saturado y te dire que tal me fue

Última edición por tripoli; 21/06/2011 a las 08:26
  #21 (permalink)  
Antiguo 21/06/2011, 10:06
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 4 meses
Puntos: 165
Respuesta: porque no funciona este codigo php

Eso esta mejor, no te preocupes, la gente te ayudará, pero te lo tienes que tomar de otra manera,

Un saludo! ;)

Etiquetas: Ninguno
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 22:19.