PDA

View Full Version : Problemino con php e Aruba


sberzo
07-03-2007, 21:00
ciao a tutti,
avevo completato un ottimo script in php (in locale) per inserire dei dati in una tabella creata in mysql.
Fantastico tutto funzionava alla meraviglia.

Poi ho messo cambiato i collegamenti per il database e ho caricato le pagine sul mio spazio web in Aruba.

Adesso mi segnala un problema all'interno di due funzioni e non capisco proprio dove sia l'errore.

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /web/htdocs/www.oratoriodiferno.it/home/Iscrizioni/Default/Iscrizione2.php on line 61

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /web/htdocs/www.oratoriodiferno.it/home/Iscrizioni/Default/Iscrizione2.php on line 82

e questo è il codice che mi da l'errore:


$db = mysql_connect ($host, $user, $pass)
or die ("Impossibile connettersi al server '$host'.");

$query_select = "select Nome, Cognome, Eta from fiaccola";
dbResult2 = mysql_query($query_select, $db);

while ($line = mysql_fetch_array($dbResult2, MYSQL_NUM)) {
foreach ($line as $col_value)
{
$numCogn = 0;
$numNome = 0;
$numEta = 0;
if($col_value==$Nome){
$numNome = $numNome+1;
}
if($col_value==$Cognome){
$numCogn = $numCogn+1;
}
if($col_value==$Eta){
$numEta = $numEta+1;
}
}
if (($numNome==1)&&($numCogn==1)&&($numEta==1)){
$riga=+1;
}
}

mysql_free_result($dbResult2);



I non riesco a trovare la soluzione,
qualcuno può dirmi qualcosa in più?

grazie mille

vizzz
07-03-2007, 21:24
$line = mysql_fetch_array($dbResult, MYSQL_NUM))
qui fai riferimento a $dbResult invece che $dbResult2

sberzo
07-03-2007, 21:46
Hai ragione, ho sbagliato io a copiare il codice,
il problema persiste!
Possono essere le 2 funzioni che nn vengono accettate da mysql targato aruba?

andbin
07-03-2007, 21:51
Possono essere le 2 funzioni che nn vengono accettate da mysql targato aruba?Dubito, se la mysql_connect ha successo allora il mysql c'è.

Piuttosto, sei sicuro che la query abbia successo? In genere è buona norma controllare che il risultato di mysql_query sia diverso da FALSE, prima di passarlo a mysql_fetch_array ecc...

EDIT: Ah, e non hai selezionato il db con mysql_select_db()

sberzo
07-03-2007, 22:04
asp ti metto anche la prima parte del codice che ho tralasciato

$host = '...';
$user = '...';
$pass = '...';
$database = '...';

$db = mysql_connect ($host, $user, $pass)
or die ("Impossibile connettersi al server '$host'.");

mysql_select_db($database, $db)
or die ("Impossibile connettersi al '$database'.");

e dopo segue quello che ho inserito prima...

Ho provato a verificare il risultato della query inserendo

print("$dbResult2");

dopo la stringa:

$dbResult2 = mysql_query($query_select, $db);

e...non mi visualizza nulla!
Immagino sia grave, vero?

cionci
08-03-2007, 07:34
Attento che su Aruba sei vincolato ad avere determinati nomi di DB. Hai tenuto conto di questo nel codice quando inizializzi il nome del DB ?

sberzo
08-03-2007, 08:59
ciao,
ho controllato, e hai ragione tu!
c'era il nome della tabella che nn corrispondeva al nome nello script ora funziona!

grazie mille