Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    UPDATE

    Salve ragazzi, mi ritrovo a modificare alcuni campi di una specifica tabella di un data-base.
    Il codice utilizzato è il seguente:
    $query = "UPDATE Items SET FileMax=$img_up_name WHERE Codice=$Codice ";
    mysql_query($query);

    mi viene datto i seguenti errori:
    Warning: mysql_query(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /web/htdocs/www.tocaquarium.it/home/prova/upper.php on line 20

    Warning: mysql_query(): A link to the server could not be established in /web/htdocs/www.tocaquarium.it/home/prova/upper.php on line 20

    cosa sbaglio??

  2. #2
    Si direbbe che ti sei scordato di aprire una connessione e forse anche di scegliere il database.

    E poi forse dovrai mettere tra apici i valori di riferimento nella query.

    metti la segnalazione di errore:

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


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    infatti c'era un errore nella connessione al data-base.
    Adesso nn mi viene segnalato nessun tipo di errore, ma nella tabella il campo nn viene modificato.
    Quale potrebbe essere il motivo?
    Grazie

  4. #4
    [supersaibal]Originariamente inviato da gaetanoTwins
    infatti c'era un errore nella connessione al data-base.
    Adesso nn mi viene segnalato nessun tipo di errore, ma nella tabella il campo nn viene modificato.
    Quale potrebbe essere il motivo?
    Grazie [/supersaibal]
    Non sono mica Madam Solange ....

    Stampa la query.... echo $query

    e vedi se ti quagliano i dati che leggi....


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Ecco la query:
    mysql_query("UPDATE Items SET FileMax=$img_up_name WHERE CodiceProdotto='$Codice' ");


    ho provato a farmi visualizzare i valori di $img_up_name e $Codice e sono quelli giusti, ma nella tabella il campo FileMax nn viene cambiato in $img_up_name.

    (Premetto che nn mi viene segnalato nessun tipo di errore)

  6. #6
    [supersaibal]Originariamente inviato da gaetanoTwins
    Ecco la query:
    mysql_query("UPDATE Items SET FileMax=$img_up_name WHERE CodiceProdotto='$Codice' ");

    ho provato a farmi visualizzare i valori di $img_up_name e $Codice e sono quelli giusti, ma nella tabella il campo FileMax nn viene cambiato in $img_up_name.

    (Premetto che nn mi viene segnalato nessun tipo di errore) [/supersaibal]
    Intendevo dire di vedere cosa viene risolto dalle variabili... Quindi non la query in se, ma la stampa con le variabili risolte.

    Pare in ogni caso, sia necessario tu metta le apici al valore --> '$img_up_name' .

    ("UPDATE Items SET FileMax = '$img_up_name' WHERE CodiceProdotto = '$Codice' ");



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it L'avatar di hyb
    Registrato dal
    Aug 2003
    Messaggi
    424
    mac, una domanda, se si racchiudono le variabili tra gli apici , '$var' --> non viene stampata $var letteralmente?
    Di solito ho problemi con le query, quindi per evitare faccio

    Codice PHP:
    "...bla bla...".$var."...bla bla..." 
    Non da problemi quindi se si rakkiude la variabile tra apici?
    C'è chi si mette degli occhiali da sole, per avere più carisma e sintomatico mistero.

  8. #8
    [supersaibal]Originariamente inviato da hyb
    mac, una domanda, se si racchiudono le variabili tra gli apici , '$var' --> non viene stampata $var letteralmente?
    [/supersaibal]
    Nota che la stringa:

    "UPDATE Items SET FileMax = '$img_up_name' WHERE CodiceProdotto = '$Codice' "

    è delimitata da doppi apici, quindi interpreterà le variabili al suo interno sostituendole con il loro valore. Gli apici vicino alle variabili non sono dei delimitatori di stringa, non servono a dire dove inizia e finisce la stringa, fanno parte della stringa, quindi non decidono come devono essere interpretate le variabili contenute. Solo gli apici che delimitano la stringa dettano legge.

    I singoli apici sono necessari poiché la sintassi della query li richiede ovvero è MySQL che ne ha bisogno.

  9. #9
    [supersaibal]Originariamente inviato da hyb
    mac, una domanda, se si racchiudono le variabili tra gli apici , '$var' --> non viene stampata $var letteralmente?
    Di solito ho problemi con le query, quindi per evitare faccio

    Codice PHP:
    "...bla bla...".$var."...bla bla..." 
    Non da problemi quindi se si rakkiude la variabile tra apici? [/supersaibal]
    NO... le cose sono come ti ha spiegato Gianni..

    Aggiungerei che anche se esci dalle virgolette doppie e utilizzi il punto di congiunzione"devi" mettere le virgolette singole o doppie con carattere di escape, perche' queste ci vogliono sempre quando il valore e' una stringa. Deve esserci qualcosa che dica dove inizia e dove finisce la striga.... (anche il gatto quando lo accarezzi alza la coda per dirti che lui finisce li )...

    nel tuo esempio bla bla riceveresti un errore... dovrebbe essere:
    codice:
    " ... bla bla = '" . $var . "' bla bla..."

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.