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

    [PHP-MYSQL] Update strano risultato

    Ciao a tutti,
    ho uno strano problema a cui non riesco a dare una spiegazione ...

    Intanto inserisco il codice:

    Codice PHP:
          if($_GET[ser] != ""){
            
    //connessione al db mysql
            
    $db mysql_connect('''''');
            if (
    $db == FALSE)
            die (
    "Errore nella connessione.");
            
    mysql_select_db('tabella'$db)
            or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
            
            echo 
    "<script type=\"text/javascript\">initDB();</script>";
            
            
            
    $licenza $_SESSION['licenza'];
            

            
    $s_query "SELECT siphone FROM tb_user WHERE licenza = ENCODE('$licenza', 'CRIPT')";
            
    $s_result mysql_query($s_query$db);
            if(!
    $s_result){
              die(
    "Errore
    "
    .mysql_error()."
    "
    );
            }
            
            
    $query mysql_query("UPDATE tb_user SET siphone = CONCAT(siphone,'#$_GET[ser]') WHERE licenza = ENCODE('$licenza', 'CRIPT')")or die("errore di query concat
    "
    .mysql_error()."
    "
    );
            
    mysql_close($db);        
            
          }
    //close if 
    Questa parte di codice, inserita in un discorso più ampio, non fa altro che fare l'update di un campo in una tabella ... aggiungendo contenuto a quello già esistente.

    Ora, il problema è che se nel campo è presente il valore "html.it" e quello che devo aggiungere è "forumPhp" ... il risultato non sarà "html.it#forumPhp" ma "html.it#forumPhp#forumPhp".

    Da cosa può dipendere questa cosa?
    Grazie!

  2. #2
    dal fatto che esegui due volte l'update

    stampa la query update

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

  3. #3
    Scusa, in quale parte del codice eseguo due volte la query?

  4. #4
    Originariamente inviato da Web01
    Scusa, in quale parte del codice eseguo due volte la query?
    da quale parte non posso saperlo mi baso esclusivamente sul risultato che dici di ottenere.

    siphone = "html.it"
    update aggiunge "forumPhp"

    tu esegui update CONCAT(siphone,'#$_GET[ser]') e ottieni

    siphone = html.it#forumPhp

    ripeti l'update e ottieni:

    siphone = html.it#forumPhp#forumPhp

    Questo esclude che ci siano due stringhe forumPhp nel GET perche' ne e' testimone (di query ripetuta) il # che viene immesso esplicitamente solo dalla query. Attenzione che non e' che ci debbano essere 2 update nello stesso script ma solo che viene eseguito un secondo update dopo il primo, magari reiterando la stessa pagina php.

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

  5. #5
    Ho scoperto il problema, praticamente dopo la query includo una pagina ... ed è questa pagina che crea il problema ... non so ancora per quale motivo, ma il problema è questo.
    Ti faccio sapere ... grazie!!

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.