errore query

  • Creatore Discussione Creatore Discussione claire
  • Data di inizio Data di inizio

claire

Nuovo Utente
20 Feb 2007
10
0
1
dunque, ho un database che funziona perfettamente on line, adesso l'ho installato anche in locale ( apache, php, mysql tutto installato correttamente) ma quando cerco di eseguire una query che on line non da problemi, i dati mi vengono scritti sul database ma a video mi da un errore.Credo dipenda dalla diversa versione di mysql che ho in locale ( la 5 ) rispetto al server ( la 4 ), ma davvero non so come venirne a capo.
( per altro ho provato a installare la versione 4 in locale ma non ci sono riuscita :( )



in pratica tramite un form devo aggiornare delle informazioni relative a degli utenti.

la query incriminata è la seguente:

Codice:
 <?   

  $query="SELECT ID, Attivo, nome, cognome, note, replace(primo,'0000-00-00','')as primo, replace(secondo,'0000-00-00','')as secondo, replace(terzo,'0000-00-00','')as terzo, replace(quarto,'0000-00-00','')as quarto, replace(quinto,'0000-00-00','')as quinto  FROM gradi  where ID=".$_GET['idIscritto'];

  mysql_connect("localhost","root","pass")

                   or die("Unable to connect to SQL server");

    mysql_select_db("Gestione") or die("Unable to select database");

  $user=mysql_query($query) or die("Select Failed - Gradi");

   $iscritto= mysql_fetch_array($user);

?>



quando la eseguo mi da : Select Failed - Gradi, anche se i dati vengono inseriti nel database correttamente.
Se al posto di or die("Select Failed - Gradi"); uso: or die(mysql_error());
l'errore che mi da è:

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 '' at line 1

Ho guardato nel manuale di mysql ma è del tutto inutile visto che all'errore corrispondente dice solo:
Error: 1064 SQLSTATE: 42000 (ER_PARSE_ERROR)

Message: %s near '%s' at line %d

il che non mi aiuta minimamente :(


Sinceramente non capisco cosa ci sia che non gli va a genio..

qualcuno sa darmi una mano? È una settiamana che ci litigo.. sono alla frutta.. aiutooooo!!!
 
l'errore lo restituisce il DBMS quindi può darsi che la versione di PHP non influisca.
Prova a mettere gli apici su tutti gli argomenti di REPLACE, ad es:
PHP:
replace('primo','0000-00-00','')
 
grazie mille, ma sono riuscita a risolvere :)
il problema era che lo il form inserimento chiamava un'altra pagina che poi ricaricava questa con un evento onload nel body che incasinava tutto :)
 

Discussioni simili