Foros del Web » Programando para Internet » PHP »

No entra al echo...

Estas en el tema de No entra al echo... en el foro de PHP en Foros del Web. Yo sé que pasa que no llega al echo...osea cuando no hay si muestra correctamente el mensaje de no hay fichero subido pero cuando es ...
  #1 (permalink)  
Antiguo 30/06/2010, 15:55
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 3 meses
Puntos: 14
No entra al echo...

Yo sé que pasa que no llega al echo...osea cuando no hay si muestra correctamente el mensaje de no hay fichero subido pero cuando es la condicion opuesta que sí hay no hace bien le while...


Código PHP:
$sql="SELECT * FROM archivoipp13 WHERE titulo='".$_SESSION["s_carrera"]."' AND centro='".$_SESSION["s_centro"]."' AND campus='".$_SESSION["s_campus"]."'";

$rs=mysql_query($sql) or die ("error".mysql_error());
$fila=mysql_fetch_array($rs);
    if(
mysql_num_rows($rs)==0) {
    echo 
"Todavía no se ha subido ningún fichero";
    
    } else {
    
$rutaLimpia=str_replace("upload/"""$fila['ruta']);
    
if (
mysql_num_rows($rs) > 0){

              while(
$filamysql_fetch_array($rs)){

    echo 
"Fichero actual: <a href='".$fila['ruta']."'>".$rutaLimpia."</a>";
    }
}

  #2 (permalink)  
Antiguo 30/06/2010, 16:22
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: No entra al echo...

es completamente normal... ya que antes de tu if() estás avanzando y comiendo del cursor a los resultados, por eso... mas adelante simplemente ya no hay datos en el puntero!!

simplemente elimina el mysql_fetch_array() antes del if() ya que no tiene un uso real, además... la $rutaLimpia debería ser definida dentro del while() y no antes...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 30/06/2010, 16:40
 
Fecha de Ingreso: julio-2008
Mensajes: 201
Antigüedad: 15 años, 9 meses
Puntos: 11
Respuesta: No entra al echo...

No te recomiendo hacer un select de todo lo que contenga esa tabla, te recomiendo que únicamente hagas select de lo que realmente necesites, en tu caso 'ruta'.

Cita:
$sql="select ruta from archivoipp13 where titulo=".$_SESSION['s_carrera']." and centro=".$_SESSION['s_centro']." and campus=".$_SESSION['s_campus']."";

$rs = mysql_query($sql) or die (mysql_error());

$rows=mysql_num_rows($rs);
if($rows == 0) echo "Todav&iacute;a no se ha subido ning&uacute;n fichero";

else{

while($fila= mysql_fetch_array($rs)){
$rutaLimpia=str_replace("upload/", "", $fila['ruta']);
echo "Fichero actual: <a href='".$fila['ruta']."'>".$rutaLimpia."</a>";
}

}
Prueba con esto a ver si te funciona. Fijate a ver si me he dejado algo :)
  #4 (permalink)  
Antiguo 30/06/2010, 17:01
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 3 meses
Puntos: 14
Respuesta: No entra al echo...

Cita:
Iniciado por pateketrueke Ver Mensaje
es completamente normal... ya que antes de tu if() estás avanzando y comiendo del cursor a los resultados, por eso... mas adelante simplemente ya no hay datos en el puntero!!

simplemente elimina el mysql_fetch_array() antes del if() ya que no tiene un uso real, además... la $rutaLimpia debería ser definida dentro del while() y no antes...

Perfecto...era eso aunque no he entendido bien el por qué. + Karma

Etiquetas: echo
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 00:36.