Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Please, help me!
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • S
      santuzzohendrix User • ultima modifica di

      Please, help me!

      Ciao a tutti!

      Ho un problema con una pagina PHP. Mi da quest'errore:

      **Notice: Undefined index: data_acc in **C:\xampp\htdocs\modello1\control.php on line **31
      Errore durante il trasferimento dei dati******
      

      Questo è il mio codice della pagina "control.php":

      <html lang="en">  <head>
          <title>Redirect...</title>
        </head>
        <body>
            <?php
          $conn = mysql_connect("localhost","root","");
          if (!$conn)
          {
          die('Connessione mancata con il root. Errore: ' . mysql_error());
          }
          $select = mysql_select_db("sabicom",$conn);
          if (!$select)
          {
          die("Errore nella connessione con il database. Errore: " . mysql_error());
          }
          $user = trim($_POST['user']);
          $pwd = trim($_POST['pwd']);
          
            $sql = "SELECT Username, Pwd FROM iscritti WHERE Username = '$user' AND Pwd = '$pwd';";
          $result = mysql_query($sql);
          if (!$result)
          {
          echo('Errore durante il trasferimento dei dati. Username e/o Password errati');
          header('location: index.php');
          } 
          else
          {
          $user = trim($_POST['user']);
          $data_acc = trim($_POST['data_acc']);
          $sql = " ";
          $sql = "INSERT INTO accesso (Username, Data-ora_accesso) 
                 VALUES('$user', '$data_acc');";
          $result = mysql_query($sql);
              if (!$result)
              die('Errore durante il trasferimento dei dati');
              else
              header("location: home.html");
          }
          ?>
          Ti stiamo reindirizzando alla pagina principale...
        </body>
      </html>
      

      L'attributo "data_acc" lo prendo dalla pagina "index.php" così:

      <input type="text" value="<?php $today = date('Y.m.d H.i'); echo $today;?>" name="data_acc" disabled="disabled" />
      

      Potreste aiutarmi?

      Grazie in anticipo.

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        tigrone User Attivo • ultima modifica di

        Prova a scrivere:

        
        if (isset($data_acc)) {
        $sql = 'INSERT INTO accesso (Username, Data-ora_accesso) VALUES ("'.$user.'", "'.$data_acc.'");';
        $result = mysql_query($sql);
        }
        
        
        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • S
          santuzzohendrix User • ultima modifica di

          No... Non fuziona ho provato in vari modi, ma nulla...

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            thedarkita ModSenior • ultima modifica di

            Ciao,
            stai utilizzando $_POST['data_acc'] prima di verificare che ci siano i dati in input. Inoltre gli input disabled non vengono spediti al server, per cui quell'input non verrà mai inviato, se devi fare in modo che l'input non sia modificare ma sia spedito devi usare readonly.

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • S
              santuzzohendrix User • ultima modifica di

              Ciao!
              Ho usato il readonly, ma non funziona lo stesso! Mi da' sempre lo stesso problema!

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                thedarkita ModSenior • ultima modifica di

                Una volta impostato come read only devi usare isset prima di utilizzare $_POST['data_acc'], altrimenti avrai sempre un notice.

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • S
                  santuzzohendrix User • ultima modifica di

                  E' esattamente quello che ho fatto!
                  Ho scritto così:

                  if (isset($data_acc)) {	$sql = "INSERT INTO accesso (Username, Data-ora_accesso) 
                  		   VALUES('$user', '$data_acc');";
                  	$result = mysql_query($sql);
                  	}
                  

                  Come posso correggerlo?

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • T
                    thedarkita ModSenior • ultima modifica di

                    L'hai messo su $data_acc, quello c'è sempre visto che hai messo chiaramente un $data_acc = qualcosa
                    Manca invece $_POST['data_acc']

                    Devi fare una cosa di questo genere:
                    [php]
                    $user = trim($_POST['user']); $data_acc = trim($_POST['data_acc']); $sql = " "; $sql = "INSERT INTO accesso (Username, Data-ora_accesso) VALUES('$user', '$data_acc');"; $result = mysql_query($sql); if (!$result) die('Errore durante il trasferimento dei dati'); else header("location: home.html");[/php]

                    In:
                    [php]
                    if(isset($_POST['user']) && isset($_POST['data_acc']))
                    {
                    $user = trim($_POST['user']); $data_acc = trim($_POST['data_acc']); $sql = " "; $sql = "INSERT INTO accesso (Username, Data-ora_accesso) VALUES('$user', '$data_acc');"; $result = mysql_query($sql); if (!$result) die('Errore durante il trasferimento dei dati'); else header("location: home.html");}[/php]

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • S
                      santuzzohendrix User • ultima modifica di

                      Ok! Ora funziona!
                      Grazie mille! 🙂

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        thedarkita ModSenior • ultima modifica di

                        Figurati. 😄
                        Fai attenzione che i tuoi script sono vulnerabili ad SQL Injection, trovi maggior informazioni qui:
                        http://www.giorgiotave.it/forum/scripting-e-risorse-utili/189074-guida-sql-injection.html

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • G
                          giangel84 User • ultima modifica di

                          @Thedarkita said:

                          Figurati. 😄
                          Fai attenzione che i tuoi script sono vulnerabili ad SQL Injection

                          Quoto e ti consiglio la sintassi mysqli.

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          Caricamento altri post
                          Rispondi
                          • Topic risposta
                          Effettua l'accesso per rispondere
                          • Da Vecchi a Nuovi
                          • Da Nuovi a Vecchi
                          • Più Voti