Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di medorex
    Registrato dal
    Apr 2002
    Messaggi
    252

    [mysql] versioni differenti

    Ciao a tutti, mi sono fatto uno script che non ha molto...
    la connesione al db 3 query e "forse" una chiamata un pò strana.
    eccolo:
    codice:
    <?
    include("config.php");
    $connection = mysql_connect($hostname, $user, $pass) or die ("Non riesco a connettermi");
    
    $query1 = "SELECT * FROM categorie WHERE cat_nome='Classico'";
    $query2 = "SELECT * FROM regioni WHERE reg_id IN (SELECT cat_id FROM categorie WHERE cat_nome='Classico')";
    $query3 = "SELECT * FROM etichetta WHERE eti_id IN (SELECT cat_id FROM categorie WHERE cat_nome='Classico')";
    
    mysql_select_db($db, $connection) or die ( mysql_error());
    
    $result1 =  mysql_query($query1);
    $result2 =  mysql_query($query2);
    $result3 =  mysql_query($query3);
    
    echo"<table width=\"500\" cellspacing=\"2\" cellpadding=\"1\">";
    	while(list($cat_id, $cat_nome) = mysql_fetch_row($result1) AND list($reg_id, $reg_regione) = mysql_fetch_row($result2) AND list($eti_id, $eti_nome, $eti_cantina, $eti_prezzo1, $eti_prezzo2) = mysql_fetch_row($result3))
    	{
    	echo"<tr align=\"left\"><td></td><td><font color=\"#685953\" size=\"4\">$reg_regione</font></td></tr>";
    	echo"<tr align=\"left\"><td>&euro; <font color=\"#666666\">$eti_prezzo2</font></td> <td>$eti_nome</td></tr>";
    	echo"<tr align=\"left\"><td><font color=\"#666666\">$eti_prezzo1</font></td><td>$eti_cantina</td></tr>";
    	echo"<tr align=\"left\"><td></td> <td></td></tr>";
    	echo"<tr align=\"left\"><td></td> <td></td></tr>";
    	}
    echo"</table>";
    
    mysql_close($connection);
    ?>
    La domanda è: perche in locale dove l' unica differenza è la versione piu recente di mysql va bene, e on line dove c'è la versione MySQL 4.0.20a no?
    L'errore che mi restituisce è questo:
    Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in \cla.php on line 56
    la linea 56 x la precisione sarebbe questa:
    codice:
    	while(list($cat_id, $cat_nome) = mysql_fetch_row($result1) AND list($reg_id, $reg_regione) = mysql_fetch_row($result2) AND list($eti_id, $eti_nome, $eti_cantina, $eti_prezzo1, $eti_prezzo2) = mysql_fetch_row($result3))
    Scusate ma son giorni che mi ci scervello, non capisco.
    Qualcuno riesce ad aiutarmi?
    Grazie
    Medo
    Ma quando impareremo mai ??

  2. #2
    Prova a fare le chiamate a mysql_query in questo modo

    mysql_query( $query ) or die(mysql_error()) ;

    Se la query non va a buon fine ti dice perchè e possiamo cominciare a capirci qualcosa di più.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  3. #3
    Utente di HTML.it L'avatar di medorex
    Registrato dal
    Apr 2002
    Messaggi
    252

    infatti...

    hai ragione scusa, è una delle mille prove che ho fatto ma non so per quale motivo tronca il messaggio d' errore a metà...
    cmq x quel che vale ecco cio che si vede anche spulciando il codice html della pagina:
    codice:
    You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT cat_id FROM categorie WHERE cat_nome='Classico')' at lin
    Si ferma a quel "lin..." che mi fa uscire dai gangheri...
    Ma quando impareremo mai ??

  4. #4
    Vabbè, ma la linea non è molto importante in questo caso. Rimane cmq il dubbio sul perchè lo faccia ma non credo sia ora il momento di capire il perchè visto che cmq si capisce quale sia l'errore.

    Prova ad eseguire la query con phpmyadmin e vedi che ti dice.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  5. #5
    Utente di HTML.it L'avatar di medorex
    Registrato dal
    Apr 2002
    Messaggi
    252
    :master:
    porc... non so utilizzare il phpmyadmin per farlgli elaborare una query da esempio cosi.
    riesci a indirizzarmi un pò tu?
    Pensi che sia piu un problema di db che di codice vero?
    Ma quando impareremo mai ??

  6. #6
    bhe, per usare phpmyadmin basta aprire la root dello scrpt, selezionare il db che si vuole usare e e poi fare quello che si vuole. nel tuo caso in alto c'è una linguetta che si chiama SQL: scrivici dentro la query e vedi che ne esce. Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  7. #7
    Utente di HTML.it L'avatar di medorex
    Registrato dal
    Apr 2002
    Messaggi
    252

    ok

    la prima query è ok

    la seconda dice:
    #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT cat_id FROM categorie WHERE cat_nome='Classico') LIMIT 0

    la terza:
    #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT cat_id FROM categorie WHERE cat_nome='Classico') LIMIT 0

    non gli piace il nido?
    Ma quando impareremo mai ??

  8. #8
    Comincia con l'eliminare la parentesi tonda alla fine (ed anche all'inizio se c'è), poi lascia uno spazio tra il nome del campo ed il valore del WHERE (rendi il codice più leggibile). Errori non ne vedo (a parte quella parentesi che non mi convince). Quindi non so che dirti. Cmq hai un errore nella sintassi della query (ma questo credo tu l'abbia già capito!).
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  9. #9
    Utente di HTML.it L'avatar di medorex
    Registrato dal
    Apr 2002
    Messaggi
    252
    ti ringrazio x la disponibiltà, di prove ne ho rifatte a bizzeffe, anche come mi indichi tu il risultato è sempre lo stesso...
    escludi a priori un problema di versione del mysql?
    Ciao
    medo
    Ma quando impareremo mai ??

  10. #10
    Bhe, di versioni di mysql non ne capisco molto ma questa è un asemplicissima query che non dovrebbe dare particolari problemi: non ci sono sub queries ne' particolarità che possano far sorgere dubbi. Magari se posti un dump del db e la query interessata posso fare delle prove io per capire se è un problema di query o un problema di installazione magari o qualunque altra cosa.

    Ovviamente non postare l'inetero db ma solo il codice per creare la tabella, qualche riga del db e la query incriminata.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.