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

    Significato di una stringa

    Dopo aver eseguito una query ad una tabella, con i valori ottenuti costruisco un array. Nell'esempio
    codice:
    $arr_staff = array();
    $arr_staff['StaffID']      = (!empty({dataset}[0][0]))?{dataset}[0][0]:'';
    etc. etc.
    A questo punto, viene eseguita una nuova query del tipo
    codice:
    $str_sql = "SELECT CategoryID FROM staff_categories
    WHERE Staff_StaffID = '".$arr_staff['StaffID']."'";
    Non mi è chiaro il significato di '".$arr_staff['StaffID']."'" .

    Non era sufficiente scrivere $arr_staff['StaffID']

    Ringrazio in anticipo per il chiarimento.
    Gaetano

  2. #2
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    Questo perché probabilmente la versione che hai di MySQL potrebbe scambiare $arr_staff per una stringa anzicché variabile.
    Inoltre è più corretto nella sintassi.

  3. #3
    L'operatore . serve a concatenare delle stringhe. Avresti comunque potuto evitare di usarlo scrivendo:

    Codice PHP:
    $str_sql "SELECT CategoryID FROM staff_categories
    WHERE Staff_StaffID = '
    {$arr_staff['StaffID']}'"
    (Bisogna aggiungere le graffe). Una lettura qui potrebbe essere utile.

  4. #4
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    ma non crea problemi nella query SQL?
    quando provo con le graffe mi da errore collation

  5. #5
    Codice PHP:
    $arr_staff['StaffID']='ciao';
    $str_sql "SELECT CategoryID FROM staff_categories 
    WHERE Staff_StaffID = '
    {$arr_staff['StaffID']}'";
    echo 
    $str_sql;

    /* stampa: SELECT CategoryID FROM staff_categories WHERE Staff_StaffID = 'ciao' */ 
    Le graffe sono dei caratteri particolari e vengono interpretate, non semplicemente stampate. C'è tutto scritto nella pagina che ho linkato due post fa.

  6. #6
    Utente di HTML.it L'avatar di skjobax
    Registrato dal
    Jan 2010
    Messaggi
    569
    A me invece li interpreta come caratteri unicode e mi da la variabile come Costante non definita....

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.