Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617

    Apice in un inserimento in tabella!

    Salve a tutti e grazie per l'attenzione.

    Ho un form che mi tira fuori dei nomi e cognomi e ad ognuno piazza un checkbx una volta selezionato il nome e cognome questo viene inserito in una tabella.

    Tutto funziona regolarmente eccetto che per un particolare.

    C'è un cognome che non entra tutto.In che senso.

    Il cognome è D'angelo.

    Ora, sulla visualizzazione tutto ok, tramite htmlentites lo visualizzo comodamente cos' comè, ma quando lo inserisce nella tabella mi inserisce solo D mentre angelo se lo perde per strada.
    Probabilmente il problema stà in quell'apice(anzi sicuramente) che per php risulta essere la chiusura del Values insierito.
    Ho cercato e parecchio ma non riesco a capire come farglielo passare così com'è.

    Ho provato addsleshes, mysql_real_escape_string ma al massimo ottengo l'inserimento di D\.

    Avete pillole da propinarmi?
    E tra l'altro qualunque cosa sia, dove la devo piazzare?Nell'inserimento in tabella o nella apgina di richiamo dei nomi?

    Grazie anticipatamente.

  2. #2
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    E D\'angelo è giusto, quindi mysql_real_escape_string() è la funziona che devi usare.

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Si ma questo avviene nella visualizzazione dei nomi, quando poi lo inserisce all'interno della tabella mi inserisce sempre D.

    Tutto questo senza contare che non mi sembra tanto carino far apparire i nomi con uno slash acanto a delle lettere, perciò vorrei che comparisse D'angelo e che mi inserisse D'angelo, senza gli slash.

    Fattibile?

  4. #4
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Sì, ma dovrebberlo inserire senza lo slash. Puoi postare il tuo codice? Se non c'è il magic_quotes=on dovresti solo richiamare mysql_real_escape_string() per fare l'escaping sulla stringa e poi inserirla tramite mysql_query(). Dopo quello la tabella dovrebbe contenere D'angelo.

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    if(!isset($_GET['attaccante'])){}
    else{
    $attaccante=$_GET['attaccante'];
    if(count($attaccante)>0){echo"<div style='background-color:green;color:red;text-align:center;font-size:25px;font-weight:bold;'><span style='font-size:25px;font-weight:bold;color:white;'>Attaccanti Aggiunti a $fanta_squadra $anno :</span>";}
    if( is_array($attaccante) )
    {
    foreach ($attaccante as $value4) {

    $value4=mysql_real_escape_string($value4);

    $inserimento_attaccante="INSERT INTO fantasquadre(nome_cognome,ruolo,fantaclub,anno) VALUES('$value4','Attaccante','$fanta_squadra','$a nno')";
    $controllo_attaccante=mysql_query($inserimento_att accante) or die(mysql_error());
    }
    for($i=0;$i < count($attaccante)-1;$i++){echo" $attaccante[$i], ";}
    echo" $value4.</div>";
    }
    }

    Questo è il codice di inserimento del nome selezionato dal precedente checkbox.

    Ho aggiunto un pezzeto dove "codifico" il nome che arriva che per intenderci in questo momento è D'angelo e non D\angelo.

    Ma non cambia nulla.

  6. #6
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Puoi fare un

    Codice PHP:
    echo $inserimento_attaccante
    per vedere la query?

    Se magic_quotes è on viene fatto l'escape due volte e quindi inserto come D\'angelo, sarebbe da disattivare poi.

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Allora credo di aver attivato il magic quotes.

    Adesso se metto mysql_real_escape_string al richiamo del nome mi tira fuori D\'\'angelo e quando salva salva D\ ma mi da errore di sintassi della query.

    Se invece tolgo mysql_real_escape_string dal richiamo e metto $value4=mysql_real_escape_string($value4); nell'inserimento, il nome me lo tira fuori così

    D''angelo mentre inserisce solo D.

    Io non ci stò capendo più nulla!

    Help!

  8. #8
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Cosa ti dà così? E' quello che ho postato prima.

    Codice PHP:
    if(!isset($_GET['attaccante'])){}
    else{
    $attaccante=$_GET['attaccante'];
    if(
    count($attaccante)>0){echo"<div style='background-color:green;color:red;text-align:center;font-size:25px;font-weight:bold;'><span style='font-size:25px;font-weight:bold;color:white;'>Attaccanti Aggiunti a $fanta_squadra $anno :</span>";}
    if( 
    is_array($attaccante) )
    {
    foreach (
    $attaccante as $value4) {

    $value4=mysql_real_escape_string($value4);

    $inserimento_attaccante="INSERT INTO fantasquadre(nome_cognome,ruolo,fantaclub,anno) VALUES('$value4','Attaccante','$fanta_squadra','$anno')";
    var_dump($inserimento_attaccante);
    $controllo_attaccante=mysql_query($inserimento_attaccante) or die(mysql_error());
    }
    for(
    $i=0;$i count($attaccante)-1;$i++){echo$attaccante[$i], ";}
    echo
    $value4.</div>";
    }


    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

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.