Visualizzazione dei risultati da 1 a 6 su 6

Discussione: stringa .. non capisco

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    1,085

    stringa .. non capisco

    vorrei capire come mai la seguente stringa (ottenuta dall'errore di mysql), se stampata con una echo ottengo una normale stringa:

    codice:
    Errore durante INSERT tab. polizze: Errore di sintassi nella query SQL vicino a '' data_cambio_stato, ' ' linea 19 - 1064
    quando invece la utilizzo dentro ad uno script mi si sfasa tutto .. e non mi fà funzionare lo script (non fate caso agli apici interni che potrebbero dare problemi .. lo stesso problema di andare a capo ce l'ho anche se sostituisco gli apici con '')

    Codice PHP:
    {                                                      
     
    $err $_COOKIE['errore'];                            
     
    $err strtr($err,"'"," ");                        
     echo 
    "errore ->  "$err ."
    ;                    
     echo 
    "<script language=\"Javascript\">  \n "  ;       
     echo 
    "x='" $err       "'                      \n"   ;       
     echo 
    "alert('Elaborazione KO: '+x );       \n"   ;     
     echo 
    "</script>" ;                                    


    codice:
    x='Errore durante INSERT tab. polizze: Errore di sintassi nella query SQL vicino a ''                               
                  data_cambio_stato,  '            ' linea 19 - 1064'
    sostituendo gli apici (con ' ' e non '' che non so perchè non mi funziona

    codice:
    x='Errore durante INSERT tab. polizze: Errore di sintassi nella query SQL vicino a                                  
                  data_cambio_stato,                 linea 19 - 1064'

  2. #2
    Utente di HTML.it L'avatar di DjBart
    Registrato dal
    Jan 2009
    Messaggi
    346
    perché il php vede questa stringa
    Codice PHP:
    $x='Errore durante INSERT tab. polizze: Errore di sintassi nella query SQL vicino a ''                               
                  data_cambio_stato,  '            ' linea 19 - 1064' 
    con più aperture e chiusure

    per risolvere l'errore metti
    $x='Errore durante INSERT tab. polizze: Errore di sintassi nella query SQL vicino a \'\'
    data_cambio_stato, \' \' linea 19 - 1064'
    in questo caso funzione visto che inserendo \ il php non legge quella apertura/chiusura

    poi se metti direttamente i " non ti darà l'errore

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    1,085
    scusa .. ma non ho capito

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    1,085
    qualcuno che mi rispiega stà cosa .. che son tonto !
    sottolineo che la stringa non la scrivo io .. ma mi viene restituita da 'mysql'

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    14
    $x="Errore durante INSERT tab. polizze: Errore di sintassi nella query SQL vicino a ' '
    data_cambio_stato, ' ' linea 19 - 1064";

    così non funziona?
    per fare in modo che php interpreti ' come carattere lo devi scrivere così \' quindi:

    $x='Errore durante INSERT tab. polizze: Errore di sintassi nella query SQL vicino a \' \'
    data_cambio_stato, \' \' linea 19 - 1064';

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    1,085
    forse non mi so spiegare ..
    non la scrivo io stà stringa .. mi viene restituita da Mysql
    eventualmente posso provare a metterci le mani .. ma se provo a sostituire i caratteri della virgoletta singola con "null" non me l'accetta .. non so il perchè
    mi accetta invece una sostituzione con altri caratteri

    Codice PHP:
    $err strtr($err,"'","");
    $err strtr($err,"'","\"");
    $err strtr($err,"'","a"); 

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.