Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2016
    Messaggi
    22

    Compilare campi step by step

    Buongiorno, ho la necessità di creare uno script che verifichi se alcuni campi sono compilati e nel caso lo fossero devono risultare in sola lettura e rendere compilabili gli altri, ma cerco di spiegarmi meglio:
    ho questi campi
    Data
    Step1
    Utente

    Data
    Step2
    Utente

    Data
    Step3
    Utente

    poniamo per esempio che questi campi non siano compilati, quindi potrò compilarli tutti;

    poniamo per esempio invece che questi campi siano così compilati: Data = 01/01/2016; Step1 = prima fase; Utente = Pippo;

    bene all'apertura della pagina vorrei che questi campi già compilati fossero in sola lettura e fossero compilabili i campi
    Data
    Step2
    Utente

    Data
    Step3
    Utente

    e così via, man mano che li compilo, fino a che risultino tutti compilati e quindi in sola lettura.

    Il nome di chi si logga lo recupero così
    Codice PHP:
    require('Connessione.php');    $resulttblusers mysql_query("select user_name from users")
    or die(
    mysql_error());$row mysql_fetch_array($resulttblusers); 
    ma all'apertura della pagina me lo scrive in tutti campi Utente, come posso fare?

    Grazie dell'aiuto
    marzio61

  2. #2
    Ciao, il fatto di 'solo lettura' non c'entra visto che, presupponendo che estrai questi campi da un DB, se tu che effettui la query e quindi decidi quale comando inviare al DB. (SELECT,UPDATE,DELETE).

    Detto questo la soluzione sono i controllo che fai su questo campo estratto dal db e presuppongo inserito dentro ad una text.

    Mi spiego meglio:
    Dopo l'estrazione dei dati dal DB farei così:

    [PHP]

    //Ho messo un controllo su true e false per velocizzare la stesura, ovviamente dovrai verificare se il campo estratto esiste o meno.

    if($Data1 === true && $Utente === true && .......)
    echo "Bloccato: <input type='text' value='$Data1' disabled>";
    else
    echo "Inseribile: <input type='text' value='' >";

    [PHP]

    In questo modo se il valore esiste lo stampi nella text e la disabiliti, se il campo non esiste dai la possibilità di inserirlo.

    Spero di aver capito.

    PS: Ti conviene salvare le date in questo formato: date('Ymd'). Ovvero: 20161214.
    Ultima modifica di hypertextPro; 14-12-2016 a 18:57

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2016
    Messaggi
    22
    Ciao e grazie per la risposta si è quello che volevo, ho cambiato qualcosa altrimenti non funzionava, adesso però non capisco come mai mi da errore sull'else, mi spiego meglio:
    Codice PHP:
    <?php if($dataultimamodifica1 && $utente 0)     
    echo 
    "Modificato il: <input type='text' value='$dataultimamodifica1' disabled>";     
    echo 
    "Utente: <input type='text' value='$utente' disabled>";else     
    echo 
    "Modificato il: <input type='text' value='$dataultimamodifica1' >";     
    echo 
    "Utente: <input type='text' value='$utente' >"
    ?>
    mentre se faccio così else me lo fa

    Codice PHP:
    <?php if($dataultimamodifica1 0)     
    echo 
    "Modificato il: <input type='text' value='$dataultimamodifica1' disabled>";
    else     
    echo 
    "Modificato il: <input type='text' value='$dataultimamodifica1' >"
    ?>
    mica sai spiegarmi l'errore?
    Ciao e ancora grazie
    marzio61

  4. #4
    L'errore sta nel fatto che usi il costrutto if() senza racchiudere il corpo delle istruzioni tra parentesi graffe.
    O meglio puoi omettere le parentesi solo se il costrutto esegue una sola azione. (Questo vale anche con gli altri costrutti).

    Ti faccio un esempio per capire:

    Codice PHP:

    //in questo caso puoi omettere le graffe perchè il corpo del costrutto contiene solo una istruzione.

        
    if($x=true)
            echo 
    "Ciao";
        else
            echo 
    "Addio";

    //in questo caso non puoi ometterle perchè esegui più istruzioni.

        
    if($x=1)
        {
            echo 
    "Ciao";
               
    $x $x +1;
         }
        else
        {
               echo 
    "Addio";
                 
    $x $x -1;
         } 

    //ma niente ti vieta di fare anche così:

        
    if($x=1)
        {
            echo 
    "Ciao";
               
    $x $x +1;
         }
        else
            echo 
    "Addio"

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2016
    Messaggi
    22
    Adesso funziona, però mi rimane il problema dei dati già inseriti, ovvero:
    nella form insert inserisco il primo step, successivamente si logga un altro utente che inserisce il secondo step, bene a questo punto dovrei vedere a video il nome del primo utente disabilitato e il campo del secondo utente con il nome di chi si è loggato, invece vedo lo stesso nome nei 2 campi, cioè l'ultimo che si è loggato...non so come fare!!!
    Qualche idea?
    Grazie
    marzio61

  6. #6
    Da dove recuperi questo nome utente?

    PS: prova a scrivere più dettagliatamente e prova ad utilizzare parole pseudo-standard, o, quantomeno intuibili da tutti.
    Così faccio fatica a starti dietro.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2016
    Messaggi
    22
    Scusa, provo con il codice utilizzato:
    query che recupera il nome utente:
    Codice PHP:
    require('Connessione.php');    $resulttblusers mysql_query("select user_name from users")
    or die(
    mysql_error());$row mysql_fetch_array($resulttblusers); 
    e poi lo assegno così
    Codice PHP:
    $utente1 $_SESSION ['user_name'];
    $utente2 $_SESSION ['user_name'];
    $utente3 $_SESSION ['user_name']; 
    sicuramente questo è sbagliato ma non saprei come fare
    Praticamente le varie fasi di lavorazione possono essere fatte da persone diverse e ognuno è necessario che lasci traccia di ciò che ha fatto
    spero inoltre di essermi spiegato...
    ciao
    marzio61
    Ultima modifica di marzio61; 15-12-2016 a 13:47

  8. #8
    Secondo me l'errore è dovuto al fatto che nella query non specifichi la clausola WHERE.
    Quando l'utente si logga e tu hai accettato l'autenticazione esegui una query con la clausola WHERE, ad esempio:

    Codice PHP:

    $query 
    "SELECT * FROM user WHERE username='$username_loggato'"
    In questo modo estrai il record di quel preciso utente.

    Puoi guardarti queste cose qui: http://www.w3schools.com/sql/default.asp

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2016
    Messaggi
    22
    Ciao ho provato così:
    Codice PHP:
    $resulttblusers = ("select * from users WHERE user_id='{$_SESSION['user_id']}'") or die(mysql_error());$row mysql_fetch_array($resulttblusers); 
    mi da questo errore Undefined variable: _SESSION
    marzio61

  10. #10
    Assegna ad una variabile il valore di $_SESSION["user_id"] e dopo inserisci quest'ultima variabile nella query

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.