Newsgroup: it.comp.www.php
Titolo: [?]Errore con Mysql_fetch_array

ecco l'errore riportatomi:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result
resource in c:\documents and
settings\programmazione\documenti\web\analisi.php on line 59
ecco le righe incriminate, ho riportatodalla 57 in poi, sapete dirmi cosa
non va? ci ho perso un pomeriggio intero e continuo a non capire l'errore,
ho frammentato l'istruzione in più righe, ho messo print di controllo, ho
controllato la strings SQL ma funziona veramente bene, nell'esempio i valori
sono fittizzi, ma esistono nel db e se eseguo la sql sotto mysql....
funziona e mi restituisce la colonna "Analisi" piena di 1 (una riga dato ch
faccio la ricerca su un campo a chiave primaria.
 $arg = "SELECT 1 AS Analisi FROM tabutenti WHERE Stato='A' AND
IDUtente='$ck_username' AND string='$ck_Acces'";
 $query=mysql_query($arg);
 $result=mysql_fetch_row($query);
 Print "argAC = $arg<BR>";
Ho provatoanche a sostituire mysql_fetch_row con mysql_fetch_array, non
cambia nulla, il risultato è lo stesso, naturalment l'errore fa riferimento
ad array invece che row, ma il tutto non cambia.
Grazie a tutti

  Print "argAC = $arg<BR>";
IDUtente č chiave primaria?
Se sģ, sarą un intero presumo, quindi non ci vogliono le virgolette:
    IDUtente=$ck_username
Inoltre hai verificato i risultati intermedi delle chiamate a MySQL?
    $query = mysql_query($arg);
Questa chiamata ha successo? Hai verificato?
    $result=mysql_fetch_row($query);
Questa ti da l'errore, ma perchč $query non č nel formato corretto, quindi
l'errore č prima.
Ciao
Marco

 sapete dirmi cosa non va? 
Forse sarebbe meglio se tu inserissi un po' di codice per la gestione
degli errori:
$arg = "SELECT 1 AS Analisi " .
	 "FROM tabutenti WHERE Stato='A' AND " .
	 "IDUtente='$ck_username' AND string='$ck_Acces'";
$query = @mysql_query($arg);
if ($query)
{
  print ("SQL Ok");
  while ($result = mysql_fetch_assoc ($query))
  {
    if (!isset ($result["Analisi"])) { $result["Analisi"] = 0; } 
    print ($result["Analisi"]);
  }
}
else // if ($query)
{
  print (mysql_errno() . ": " . mysql_error() . "\n");
}
-- 
I am what I am, I do what I can
Sei un newbie? Leggi questo 
http://url.repository.biz/go/1
Inviare email con allegati? 
http://url.repository.biz/go/x

 Inviare email con allegati? 
http://url.repository.biz/go/x
Come hai visto dal codice ...... avevo già messo debug ovunque......, in
pratica al primo IF spara ubito sulla condizine false, ossia mi stampa
"Query non risucita", ma visto l'errore è normale che si comporti in tale
maniera. BTW progtrammo in VC++, VB++ e conosco SQL  quindi non sono proprio
a d igiuno di programmazione, se vuoi puoi andare sul più tecnico
Ciao da Spieg

 Si, da True, quindi va bene, da un risultato.
In realtà non va molto bene.
Non ti deve restituire TRUE ma una resource con i risultati della query.
Domanda stupida. La fai la connessione a MySQL?
Prova a postare tutto il codice.
Ciao
Marco

  $result=mysql_fetch_row($query);
infatti esegui mysql_fetch_row su $query senza verificare se e' una
risorsa valida. Utilizza il codice che ti ho proposto precedentemente.
Come ti ha suggerito Marco, prova a postare tutto il codice dello
script, altrimenti e' un po' come andare alla cieca.


 ha scritto nel messaggio
news:bumu0u$t2t$1...@newsreader.mailgate.org...


 Commenti 
http://www.php.net/manual/en/language.basic-syntax.comments.php
ok, usavo tutti gli altri, ma questo di commento mi era sguggito, preferivo
usare # in casi tipo questo,


 ha scritto nel messaggio
news:bumu0u$t2t$1...@newsreader.mailgate.org...


 ora il codice funziona.
Non ci avevo fatto caso.
Io uso echo e non metto mai le parentesi.
Ciao
Marco

 almeno secondo il manuale online) corretto?
Si.
