Foros del Web » Programando para Internet » PHP »

errore php

Estas en el tema de errore php en el foro de PHP en Foros del Web. hola a todos, no puedo resolver este problema. alguien me puede ayudar? file functions.php Código PHP: include( 'config.php' ); function  ejecutaQuery ( $query ,  $debug  ...
  #1 (permalink)  
Antiguo 25/06/2012, 08:08
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
errore php

hola a todos, no puedo resolver este problema. alguien me puede ayudar?

file functions.php
Código PHP:
include('config.php');
function 
ejecutaQuery($query$debug 0)
{
    if (
$debug == 0) {
        
$resultado mysql_query($query);
    }
    if (
$debug == 1) {
        
$resultado mysql_query($query);
        if (
$resultado) {
            echo 
"query eseguita correttamente <br/>";
            echo 
"Query eseguita : $query";
        }
        if (
$resultado == false) {
            echo 
"Query eseguita : $query <br/>";
            echo die(
"Sql Error : " mysql_error());
        }
    }
}

function 
creaTabla ($query,$debug=0) {
    
    
$result ejecutaQuery($query$debug);    
        
    if(
$lst mysql_fetch_assoc($result))
        {
            
mysql_free_result($result);
            return 
$lst;
        }
        
mysql_free_result($result);
        return 
false;
    
    
    } 
file llama funcion

Código PHP:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>

<body>
<?php 
$Filtro 
"3";
$Query "SELECT * FROM immagini WHERE Tipo = $Filtro";    
//ejecutaQuery($Query,1);

/*/*/

$tablaImmagini creaTabla($Query,1);

if (!
$tablaImmagini) {
    echo 
"No se pudo ejecutar con exito la consulta ($Query) en la BD: " mysql_error();
    exit;
}

if (
mysql_num_rows($tablaImmagini) == 0) {
    echo 
"No se han encontrado filas, nada a imprimir, asi que voy a detenerme.";
    exit;
}


while (
$tablaImmagini mysql_fetch_assoc($resultado)) {
    echo 
$tablaImmagini["Titolo"];
    echo 
$tablaImmagini["Descrizione"];
    echo 
$tablaImmagini["Immagini"];
}

me da este error.

query eseguita correttamente
Query eseguita : SELECT * FROM immagini WHERE Tipo = 3
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Users\candavisa\Documents\server\EasyPHP5.2.10\ www\dinamic\otra\Admin\functions.php on line 25

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\Users\candavisa\Documents\server\EasyPHP5.2.10\ www\dinamic\otra\Admin\functions.php on line 30
No se pudo ejecutar con exito la consulta (SELECT * FROM immagini WHERE Tipo = 3) en la BD:

agradesco de antemano ;)
  #2 (permalink)  
Antiguo 25/06/2012, 09:23
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: errore php

la variable $resultado está dentro del ámbito local de la función ejecutaQuery, no es devuelta, ni seteada, ni tampoco es global, por lo tanto no está al alcance global del script, refactoriza ese punto, lo ideal es que sea devuelta por la función
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 25/06/2012, 09:25
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

ok ahora funciona asi :
Código PHP:
<?php
include('config.php');
function 
ejecutaQuery($query$debug 0)
{
    if (
$debug == 0) {
        
$resultado mysql_query($query);
        return 
$resultado;
    }
    if (
$debug == 1) {
        
$resultado mysql_query($query);
        if (
$resultado) {
            echo 
"query eseguita correttamente <br/>";
            echo 
"Query eseguita : $query";
            return 
$resultado;
        }
        if (
$resultado == false) {
            echo 
"Query eseguita : $query <br/>";
            echo die(
"Sql Error : " mysql_error());
            return 
false;    
        }
        
    }
}

function 
creaTabla ($query,$debug=0) {
    
    
$resultado ejecutaQuery($query$debug);            
    while (
$list mysql_fetch_array($resultado)) {        
    return 
$list;            
    }
}

    
$Filtro "1";
$Query "SELECT * FROM immagini WHERE Tipo = $Filtro";        
$tabla creaTabla($Query);

echo 
$tabla['Titolo']."<br/>";
echo 
$tabla['Descrizione']."<br/>";


?>

la unica cosa es k solo me devuelve una sola fila. como puedo obtener todas la filas de tipo 1 ?

gracias por las respuestas
  #4 (permalink)  
Antiguo 25/06/2012, 09:38
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: errore php

es que te devuelve todas las filas, lo que pasa es si te fijas:

while ($list = mysql_fetch_array($resultado)) {
return $list;
}

estás retornando el primer resultado, return cierra el ciclo y devuelve el resultado de la función, deberías usar un array dinámico y devolver todas las filas de ése array:

Código PHP:
Ver original
  1. $myarray = Array();
  2. while ($list = mysql_fetch_array($resultado)) {        
  3.     $myarray[]= $list;            
  4. }
  5. return $myarray;
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 25/06/2012, 09:43
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

que tal asi?

Código PHP:
function creaTabla ($query,$debug=0) {
    
    
$resultado ejecutaQuery($query$debug);            
    while (
$list mysql_fetch_array($resultado)) {        
    
$return[] = $list;
       return 
$return;            
    }

  #6 (permalink)  
Antiguo 25/06/2012, 09:46
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: errore php

no, porque todavía tienes el return dentro del ciclo
la variable $return no ha sido declarada
no deberían usarse como nombres de variable las palabras reservadas, $return por ejemplo podría ser $freturn
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #7 (permalink)  
Antiguo 25/06/2012, 09:47
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

Código PHP:
Ver original
  1. function creaTabla ($query,$debug=0) {
  2.    
  3.     $resultado = ejecutaQuery($query, $debug);         
  4.     while ($list = mysql_fetch_array($resultado)) {    
  5.     $return[] = $list;
  6.            
  7.     } return $return;  
  8. }
  9.  
  10.    
  11. $Filtro = "1";
  12. $Query = "SELECT * FROM immagini WHERE Tipo = $Filtro";    
  13. $tabla = creaTabla($Query,1);
  14.  
  15.  
  16. print_r($tabla);
  #8 (permalink)  
Antiguo 25/06/2012, 09:48
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

ok pero no quiero todos los campos !!!
  #9 (permalink)  
Antiguo 25/06/2012, 09:49
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: errore php

entonces no uses select *, selecciona los campos que quieras:

select campo1, campo2 from ...
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #10 (permalink)  
Antiguo 25/06/2012, 09:53
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

Código PHP:
Ver original
  1. function creaTabla ($query,$debug=0) {
  2.    
  3.     $resultado = ejecutaQuery($query, $debug);         
  4.     while ($list = mysql_fetch_array($resultado)) {    
  5.     $return[] = $list;
  6.            
  7.     } return $return;  
  8. }
  9.  
  10.    
  11. $Filtro = "1";
  12. $Query = "SELECT Titolo, Descrizione, Immagini FROM immagini WHERE Tipo = $Filtro";    
  13. $tabla = creaTabla($Query,1);
  14.  
  15.  
  16.  
  17. echo $tabla['Titolo']."<br/>";
  18. echo $tabla['Descrizione']."<br/>";
  19. echo $tabla['Immagini']."<br/>";
  #11 (permalink)  
Antiguo 25/06/2012, 09:54
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

pero me da error a la hora de hacer el echo!!

Código PHP:
Ver original
  1. Notice: Undefined index: Titolo in C:\Users\candavisa\Documents\server\EasyPHP5.2.10\www\dinamic\otra\Admin\functions.php on line 41
  2.  
  3.  
  4. Notice: Undefined index: Descrizione in C:\Users\candavisa\Documents\server\EasyPHP5.2.10\www\dinamic\otra\Admin\functions.php on line 42
  5.  
  6.  
  7. Notice: Undefined index: Immagini in C:\Users\candavisa\Documents\server\EasyPHP5.2.10\www\dinamic\otra\Admin\functions.php on line 43
  #12 (permalink)  
Antiguo 25/06/2012, 10:02
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: errore php

usa mysql_fetch_assoc, otro punto es si en la base de datos están todos con la primera inicial en mayúscula, por lo general en DB solo debe usarse minúscula, sobre todo en sistemas basados en UNIX/LINUX

has un var_dump($tabla); para que veas como se devuelven realmente
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #13 (permalink)  
Antiguo 25/06/2012, 10:06
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

parece k me crea un array multidimensional pork cuando hago :

echo $tabla[0][0];
echo $tabla[0][1];

me imprime solo el primer titulo y la primera descripcion de la primera fila ....
  #14 (permalink)  
Antiguo 25/06/2012, 10:10
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

bueno te agradesco mucho de todos modos, lo importante es k me devuelve un valor, voy a bbuscar como imprimir el resultado . gracias
  #15 (permalink)  
Antiguo 25/06/2012, 10:11
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: errore php

claro que de devuelve un array de array ¿no estás devolviendo una tabla?: son 2 dimensiones, no 1
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #16 (permalink)  
Antiguo 26/06/2012, 01:57
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

ok cuando imprimo el array me da este resultado, y me repite dos veces cada campo:

Código PHP:
Ver original
  1. query eseguita correttamente
  2. Query eseguita : SELECT Titolo, Descrizione, Immagini FROM immagini WHERE Tipo = 1
  3.  
  4. (
  5.     [0] => Array
  6.         (
  7.             [0] => 1dsasadasdasdasd d das
  8.             [Titolo] => 1dsasadasdasdasd d das
  9.             [1] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id bibendum leo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.  
  10.             [Descrizione] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id bibendum leo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.  
  11.             [2] => 1340191935449234_67382514.jpg
  12.             [Immagini] => 1340191935449234_67382514.jpg
  13.         )
  14.  
  15.     [1] => Array
  16.         (
  17.             [0] => 3lorem ipsum titolo 3
  18.             [Titolo] => 3lorem ipsum titolo 3
  19.             [1] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. In venenatis lectus eget massa gravida eget dictum nunc facilisis. Etiam in hendrerit quam. Praesent lobortis elit vitae sapien aliquet ac dapi
  20.             [Descrizione] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. In venenatis lectus eget massa gravida eget dictum nunc facilisis. Etiam in hendrerit quam. Praesent lobortis elit vitae sapien aliquet ac dapi
  21.             [2] => 1340195921718483_83679707.jpg
  22.             [Immagini] => 1340195921718483_83679707.jpg
  23.         )
  24.  
  25.     [2] => Array
  26.         (
  27.             [0] => dasdasdasdsd asd d wq erqwe wqewqewqe qweqwe dasdasdasdsd asd d wq erqwe wqewqewqe qweqwe dasdasdasd
  28.             [Titolo] => dasdasdasdsd asd d wq erqwe wqewqewqe qweqwe dasdasdasdsd asd d wq erqwe wqewqewqe qweqwe dasdasdasd
  29.             [1] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id bibendum leo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.    
  30.             [Descrizione] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id bibendum leo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.    
  31.             [2] => 1340196158fragrance_sfondo.jpg
  32.             [Immagini] => 1340196158fragrance_sfondo.jpg
  33.         )
  34.  
  35.     [3] => Array
  36.         (
  37.             [0] => 8sdaasdsadasda
  38.             [Titolo] => 8sdaasdsadasda
  39.             [1] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id bibendum leo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.  
  40.             [Descrizione] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id bibendum leo. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.  
  41.             [2] => 1340196265865754_31286817.jpg
  42.             [Immagini] => 1340196265865754_31286817.jpg
  43.         )
  44.  
  45.     [4] => Array
  46.         (
  47.             [0] => reter
  48.             [Titolo] => reter
  49.             [1] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eleifend, mi quis blandit mollis, velit neque pretium mauris, quis vehicula magna eros eget eros. Proin et velit justo
  50.             [Descrizione] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eleifend, mi quis blandit mollis, velit neque pretium mauris, quis vehicula magna eros eget eros. Proin et velit justo
  51.             [2] => 1340195847643987_25971099.jpg
  52.             [Immagini] => 1340195847643987_25971099.jpg
  53.         )
  54.  
  55.     [5] => Array
  56.         (
  57.             [0] => Lorem ipsum dolor sit
  58.             [Titolo] => Lorem ipsum dolor sit
  59.             [1] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla ac sollicitudin nisi. Curabitur scelerisque,
  60.             [Descrizione] => Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla ac sollicitudin nisi. Curabitur scelerisque,
  61.             [2] => 1340269585010_4700.JPG
  62.             [Immagini] => 1340269585010_4700.JPG
  63.         )
  64.  
  65.     [6] => Array
  66.         (
  67.             [0] => titolo ccc
  68.             [Titolo] => titolo ccc
  69.             [1] => fsdfsdfdasdasd
  70.             [Descrizione] => fsdfsdfdasdasd
  71.             [2] => 1340283403BGCDO001.jpg
  72.             [Immagini] => 1340283403BGCDO001.jpg
  73.         )
  74.  
  75.     [7] => Array
  76.         (
  77.             [0] => Lorem ipsum dolor sit
  78.             [Titolo] => Lorem ipsum dolor sit
  79.             [1] => tertertr
  80.             [Descrizione] => tertertr
  81.             [2] => 1340284227balenc $-^ _iaga.jpg
  82.             [Immagini] => 1340284227balenc $-^ _iaga.jpg
  83.         )
  84.  
  85.     [8] => Array
  86.         (
  87.             [0] => adsasdas
  88.             [Titolo] => adsasdas
  89.             [1] => trytrytr
  90.             [Descrizione] => trytrytr
  91.             [2] => 1340284423JB0462.jpg
  92.             [Immagini] => 1340284423JB0462.jpg
  93.         )
  94.  
  95.     [9] => Array
  96.         (
  97.             [0] => adsasdas
  98.             [Titolo] => adsasdas
  99.             [1] => trerterter
  100.             [Descrizione] => trerterter
  101.             [2] => 1340284787BEBRS001.jpg
  102.             [Immagini] => 1340284787BEBRS001.jpg
  103.         )
  104.  
  105.     [10] => Array
  106.         (
  107.             [0] => dasdas
  108.             [Titolo] => dasdas
  109.             [1] => ddasd
  110.             [Descrizione] => ddasd
  111.             [2] => 1340284949BELFE.GIF
  112.             [Immagini] => 1340284949BELFE.GIF
  113.         )
  114.  
  115. )
  #17 (permalink)  
Antiguo 26/06/2012, 03:30
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Respuesta: errore php

Como ya te han dicho, usa mysql_fetch_assoc en vez de mysql_fetch_array.
__________________
» Presupuesto Pagina Web
  #18 (permalink)  
Antiguo 26/06/2012, 03:53
Avatar de cesarin3134  
Fecha de Ingreso: enero-2012
Ubicación: Milan
Mensajes: 97
Antigüedad: 12 años, 3 meses
Puntos: 20
Respuesta: errore php

hola bueno finalmente pude resolverlo. pondre el codigo aqui por si le sirve a otros de ayuda, doy las gracias por la ayuda brindada. ;)

Código PHP:
 function ejecutaQuery($query$debug 0)
  {
      if (
$debug == 0) {
          
$resultado mysql_query($query);
          return 
$resultado;
      }
      if (
$debug == 1) {
          
$resultado mysql_query($query);
          if (
$resultado) {
              echo 
"query eseguita correttamente <br/>";
              echo 
"Query eseguita : $query <br/>";
              return 
$resultado;
          }
          if (
$resultado == false) {
              echo 
"Query eseguita : $query <br/>";
              echo die(
"Sql Error : " mysql_error());
              return 
false;
          }
      }
  }
  function 
creaTabla($query$debug 0)
  {
      
$resultado ejecutaQuery($query$debug);
      while (
$lista mysql_fetch_array($resultado)) {
             
            echo 
"<tr>";
            if(
$lista['Tipo'] == 1) {echo "<td>Japanese ink </td>";}
            if(
$lista['Tipo'] == 2) {echo "<td>Pen</td>";}
            echo 
"<td>".$lista['Titolo']."</td>";
            echo 
"<td>".$lista['Descrizione']."</td>";            
            echo 
"<td> <img src=\"../Img/Illustration/Small/".$lista['Immagini']."\"/> </td>";
            echo 
"<td><a href='UpdateImmagine.php?idImmagini=".$lista['idImmagini']."' id=".$lista['idImmagini'].">Modifica</a> |";
            echo 
"<a href='javascript:void(0)' class='DelButton' id=".$lista['idImmagini'].">Elimina</a></td>";
            echo 
"</tr>";
          
      } 
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 14:11.