Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente bannato
    Registrato dal
    Oct 2011
    Messaggi
    185

    concatenazione stringe php

    per concatenare faccio cosi

    Codice PHP:

     
    if($row['active']=="false"){
          
    $_SESSION['msg'].="Il tuo Account è disabilitato
    "
    ;
          if(
    $row['code']=="bannato"){
              
    $_SESSION['msg'].="perchè sei stato bannato";

          }else{
              
    $_SESSION['msg'].="perchè non hai confermato l'email [b]".$row['email']."[/b]";

          }
      } 

    ho fatto un test e ineffetti mi stampa bene le due righe

    pero' mi da anche questo errore
    Notice: Undefined index: msg in D:\.. on line 126
    che sarebbe in corrispondenza

    $_SESSION['msg'].="Il tuo Account è disabilitato
    ";
    Perchè fa cosi?

  2. #2
    Perche' evidentemente $_SESSION['msg'] non esiste quando provi a concatenargli quella stringa.

  3. #3
    Utente bannato
    Registrato dal
    Oct 2011
    Messaggi
    185
    esiste questa è la cosa strana
    valorizzo prima $_session['msg']


    poi sotto lo stampo

    echo $_session['msg']

    e poi lo elimino

    unset($_session['msg']);

    pero' a questo punto lo script è finito e mi ha anche stampato giusto
    però ritorna indietro dicendomi che non esiste....mhà un mistero

  4. #4
    Utente bannato
    Registrato dal
    Oct 2011
    Messaggi
    185
    se tolgo la concatenazione mi stampa solo una di queste 2


    if($row['code']=="bannato"){
    $_SESSION['msg'].="perchè sei stato bannato";

    }else{
    $_SESSION['msg'].="perchè non hai confermato l'email ".$row['email']."";

    }


    però l'errore Notice: non cè


    non vorrei che sbaglio qualcosa nella concatenazione

  5. #5
    Originariamente inviato da Raulken
    esiste questa è la cosa strana
    valorizzo prima $_session['msg']
    In quel codice no, ci sono solo tre concatenazioni, mai una inizializzazione.

  6. #6
    Utente bannato
    Registrato dal
    Oct 2011
    Messaggi
    185
    poi mettiamo pure per assurdo che non esiste
    cmq non dovrebbe darmi l'errore perchè

    $_SESSION['msg'].="Il tuo Account è disabilitato
    ";

    non stampa, ma valorizza solo



    mica bisogna fargli capire quando finisce la concatenazione?

    tipo

    $stringa.="ciao";

    .$striga="ciao2";
    una cosa del genere?

  7. #7
    Utente bannato
    Registrato dal
    Oct 2011
    Messaggi
    185
    Originariamente inviato da k.b
    In quel codice no, ci sono solo tre concatenazioni, mai una inizializzazione.
    come si inizializza?

  8. #8
    Originariamente inviato da Raulken
    poi mettiamo pure per assurdo che non esiste
    cmq non dovrebbe darmi l'errore perchè

    $_SESSION['msg'].="Il tuo Account è disabilitato
    ";

    non stampa, ma valorizza solo



    mica bisogna fargli capire quando finisce la concatenazione?

    tipo

    $stringa.="ciao";

    .$striga="ciao2";
    una cosa del genere?
    Quella e' una concatenazione, non una inizializzazione:

    codice:
    $_SESSION['msg'].="Il tuo Account è disabilitato
    ";
    e' equivalente a
    codice:
    $_SESSION['msg'] =  $_SESSION['msg'] . "Il tuo Account è disabilitato
    ";
    ma se attacchi una stringa ad una variabile che non esiste (ancora), viene generato un notice.

  9. #9
    Utente bannato
    Registrato dal
    Oct 2011
    Messaggi
    185
    grazie ho capito

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.