Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente bannato
    Registrato dal
    May 2001
    Messaggi
    460

    Sintassi $_Session, My_SQL

    stavolta non è un errore ma veramente non so la sintassi e non riesco a trovarla da nesuna parte

    codice:
    $sql = "INSERT INTO utenti 
                 (u_nome,
    			 u_cognome, 
    			 u_societa, 
    			 u_indirizzo, 
    			 u_citta, 
    			 u_provincia, 
    			 u_cap, 
    			 u_telefono, 
    			 u_fax, 
    			 u_email, 
    			 u_riferimento,  
    			 u_fiscale, 
    			 u_indspedizione,
    			 u_status, 
    			 u_partita, 
    			 u_commenti, 
    			 u_varie, 
    			 u_password)
    			 VALUES
    			 ($_SESSION[datiutente][0],
    '$_SESSION[datiutente][1]',
    '$_SESSION[datiutente][2]',
    '$_SESSION[datiutente][3]',
    '$_SESSION[datiutente][4]',		  '$_SESSION[datiutente][5]',
    '$_SESSION[datiutente][6]',
    $_SESSION[datiutente][7],
    '$_SESSION[datiutente][8]',
    '$_SESSION[datiutente][9]',
    '$_SESSION[datiutente][10]',
    '$_SESSION[datiutente][11]',       		  '$_SESSION[datiutente][12]',
    '$_SESSION[datiutente][13]',
    '$_SESSION[datiutente][14]',
    '$_SESSION[datiutente][15]',  
    '$_SESSION[datiutente][16]',  
    '$_SESSION[datiutente][17]')";
    E mi da
    INSERT INTO utenti (u_nome, u_cognome, u_societa, u_indirizzo, u_citta, u_provincia, u_cap, u_telefono, u_fax, u_email, u_riferimento, u_fiscale, u_indspedizione, u_status, u_partita, u_commenti, u_varie, u_password) VALUES ([0], '[1]', '[2]', '[3]', '[4]', '[5]', '[6]', [7], '[8]', '[9]', '[10]', '[11]', '[12]', '[13]', '[14]', '[15]', '[16]', '[17]')

    E no bene....io devo dare il valore dell'array non il numero...a sintassi come si fa ?

  2. #2
    Prima una domanda stupida, se scrivi
    codice:
    echo "<pre>\n" . print_r($_SESSION['datiutente'], true);
    exit();
    prima della query, i valori che vengono stampati sono corretti ?

    A proposito della sintassi, devi mettere gli apici attorno agli indici non numerici degli array.

    Quindi nel tuo caso:

    $_SESSION['datiutente'][6], ecc...

    Se poi metti anche le graffe attorno alla variabile, PHP è più contento

    '{$_SESSION['datiutente'][6]}', '{$_SESSION['datiutente'][7]}', ecc...
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  3. #3
    Utente bannato
    Registrato dal
    May 2001
    Messaggi
    460
    INSERT INTO utenti (u_nome, u_cognome, u_societa, u_indirizzo, u_citta, u_provincia, u_cap, u_telefono, u_fax, u_email, u_riferimento, u_fiscale, u_indspedizione, u_status, u_partita, u_commenti, u_varie, u_password) VALUES ('', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '')

    Adesso vienei così e si i dati sono corretti

    ('{$_SESSION['datiutente'][0]}', ....e li ho insieriti così...

  4. #4
    Mi posti l'output di queste righe ?

    codice:
    echo "<pre>\n" . print_r($_SESSION['datiutente'], true);
    exit();
    Ovviamente cambia eventuali dati sensibili
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  5. #5
    Il problema è che non credo tu possa inserire dirrettamente un array in una stringa, o meglio non puoi in quel modo.

    Questa è la sintassi che usi attualmente:
    codice:
    $sql="questa è una prova $_SESSION[datiutente][1] questa è una prova";
    Questa è la sintassi che ti consiglio di usare:
    codice:
    $sql="questa è una prova ".$_SESSION[datiutente][1]." questa è una prova";
    Ps. i motivi tecnici non li so però se chiudo la stringa e aggiungo la variabile con l'operatore . dovrebbe funzionare

  6. #6
    Utente bannato
    Registrato dal
    May 2001
    Messaggi
    460
    Originariamente inviato da gm
    Mi posti l'output di queste righe ?

    codice:
    echo "<pre>\n" . print_r($_SESSION['datiutente'], true);
    exit();
    Ovviamente cambia eventuali dati sensibili
    Warning: Wrong parameter count for print_r() in c:\programmi\apache group\apache\htdocs\spigu\iscrizioneu.php on line 42

    che è quella riga che mi hai dato tu

  7. #7
    Utente bannato
    Registrato dal
    May 2001
    Messaggi
    460
    Originariamente inviato da shake84
    Il problema è che non credo tu possa inserire dirrettamente un array in una stringa, o meglio non puoi in quel modo.

    Questa è la sintassi che usi attualmente:
    codice:
    $sql="questa è una prova $_SESSION[datiutente][1] questa è una prova";
    Questa è la sintassi che ti consiglio di usare:
    codice:
    $sql="questa è una prova ".$_SESSION[datiutente][1]." questa è una prova";
    Ps. i motivi tecnici non li so però se chiudo la stringa e aggiungo la variabile con l'operatore . dovrebbe funzionare
    grazie

  8. #8
    Originariamente inviato da carnauser
    Warning: Wrong parameter count for print_r() in c:\programmi\apache group\apache\htdocs\spigu\iscrizioneu.php on line 42

    che è quella riga che mi hai dato tu
    Azz, ma hai una versione un po' vecchiotta di PHP, ti consiglio di aggiornarla.

    Ok, scrivi così (prima della query) e posta l'output

    codice:
    echo "<pre>\n";
    print_r($_SESSION['datiutente']);
    exit();
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  9. #9
    Utente bannato
    Registrato dal
    May 2001
    Messaggi
    460
    contrordine non vaun cazz

    ('".$_SESSION[datiutente][0]."', non va...

  10. #10
    Originariamente inviato da shake84
    Il problema è che non credo tu possa inserire dirrettamente un array in una stringa, o meglio non puoi in quel modo.

    Questa è la sintassi che usi attualmente:
    codice:
    $sql="questa è una prova $_SESSION[datiutente][1] questa è una prova";
    Questa è la sintassi che ti consiglio di usare:
    codice:
    $sql="questa è una prova ".$_SESSION[datiutente][1]." questa è una prova";
    Ps. i motivi tecnici non li so però se chiudo la stringa e aggiungo la variabile con l'operatore . dovrebbe funzionare
    non c'entra assolutamente nulla ... vengono supportate tutte e due le sintassi

    io personalmente preferisco questa terza perché la trovo più leggibile
    codice:
    $sql="questa è una prova {$_SESSION['datiutente'][1]} questa è una prova";
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

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.