Visualizzazione dei risultati da 1 a 3 su 3

Hybrid View

  1. #1

    Assegnare valore a elemento HTML...

    Ciao a tutti, eccomi qui di nuovo a rompere le scatole.
    Scusate, forse mi sto perdendo in un bicchier d'acqua, ma dopo una giornata di prove e ricerche su google ho deciso di gettare la spugna
    Vorrei chiedere se da php è possibile assegnare ad un elemento html (per esempio un <input>) un valore come se fosse stato digitato da tastiera.
    Quindi quello che mi serve è precompilare i campi.
    Mi spiego meglio, ho fatto un form di inserimento nominativi.
    Quando si conferma l'inserimento, la parte php della pagina controlla che tutti i campi corrispondano a quanto ci si dovrebbe aspettare.
    Se ci sono degli errori, esce un alert che ho creato tramite javascript.
    Il problema è che appena do ok all'alert, la pagina si ricarica e perdo tutto quello che è stato precedentemente inserito, mentre a me piacerebbe che i campi rimanessero li compilati con la possibilità da parte dell'utente di andarli a modificare prima di riconfermare.
    Spero di essermi spiegato, ma questa sera sono abbastanza fuso
    Grazie.

    Stefano
    Stefanoxjx

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Codice PHP:
    <?php $nome 'Pippo'?>
    <input type="text" value="<?php $nome ?>" name="nome">
    Comunque se perdi i dati vuol dire che ricarichi la pagina, quindi perdi l'utilità di usare javascript, che si usa proprio per non ricaricare la pagina.
    Stai sbagliando qualcosa nella logica dell'applicazione.

  3. #3
    Probabile stia sbagliando qualcosa, infatti mi sono messo a fare questo lavoretto per approfondire e capire il funzionamento.
    A me però non risulta di ricaricare la pagina.
    Questa è una delle pagine:
    codice:
    <!DOCTYPE html>
    <html> 
    <head>
      <title>Dentista</title>
      <!-- META SPECIFICI PER DISPOSITIVI MOBILI -->
      <meta name="HandheldFriendly" content="true" />
      <meta name="format-detection" content="telephone=no" />
      <meta name="viewport" content="width=device-width, user-scalable=0, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />
      <!-- META SPECIFICI PER DISPOSITIVI MOBILI -->
      
      <!-- APPLE TOUCH ICON -->
      <link rel="apple-touch-icon" href="/img/icona_per_ios.png">
      <!-- APPLE TOUCH ICON -->
      
      <!-- CSS -->
      <link rel="stylesheet" href="/css/style.css" type="text/css" />
      <!-- CSS -->
      
      <!-- JQUERY -->
      <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
      <!-- JQUERY -->    
    
    
      <!-- NOSTRI SCRIPT -->
    
    
      <!-- NOSTRI SCRIPT -->
    </head>
    <body>
      <div id="header">
        <br>
        <img height="10%" width="10%" src="/resource/logo.jpg" alt="Logo">
        <br><br>
      </div>
      <br>
      <br>
      <div id="menu">
        <form action="<?= $_SERVER['PHP_SELF'] ?>" method="post" >
        <table class="tablelogin">
            <tr class="tablelogin" width="300">
                <td style="text-align: center;" class="tablelogin" width="50%" height="30px">Tipo lavorazione</td>
                <td style="text-align: center;" class="tablelogin" width="50%" height="30px"><input type="text" name="Lavorazione"></td>
            </tr>
        </table>
            <br><br>
            <table class="tablelogin" width="300" border="0" bordercolor="#000000">
                <tr class="tablelogin">
                    <td class="tablelogin" width="33%" height="25px">
                        <form action="/logout.php" target="">
                            <input type=image title="Logout" src="/resource/Exit.ico" alt="Logout">
                        </form>
                    </td>
                    <td class="tablelogin" width="33%" height="25px">
                        <form action="adminMnu.php" target="">
                            <input type=image title="Ritorna al menù" src="/resource/Undo.ico" alt="Menu">
                        </form>
                    </td>
                    <td class="tablelogin" width="33%" height="25px">                
                             <input type=image title="Conferma" src="/resource/Ok.ico" alt="Ok" name="conferma">
                    </td>
                </tr> 
            </table>
        </form>
      </div>
      <br>
      <br>
      <div id="footer">
      </div>
    </body>
    </html>
    
    
    <?php
    session_start();
    
    
    if (!isset($_SESSION['_password']))
    {
        header('Location: /index.php');
    }
    
    
    require_once("../include/config.php");
    require_once("../include/connectDB.php");
    
    
    if (!empty($_POST["Lavorazione"]))
    {
       $_lavorazione=trim($_POST['Lavorazione']);
    
    
       if(strlen($_lavorazione) > LAVORAZIONE_LENGHT) echo "stringa troppo lunga";
       else echo $_lavorazione;
    }
    
    
    ?>
    A parte gli "if" sulla parte php che sono di debug per capire cosa succede e la parte php stessa che inizialmente era all'inizio del file (l'ho spostata sotto solo per fare una prova) comunque se tu provi a scrivere qualsiasi cosa e a premere il pulsante conferma (quello più a destra visto che non hai le icone) vedrai il campo "Lavorazioni" svuotarsi.
    Questo non è un problema se io posso passare all'inserimento successivo, ma se per caso dovessi dire all'utente di modificare quanto inserito magari perchè ha inserito troppi caratteri, o faccio reinserire tutto da zero all'utente (cosa che può andare bene in questo caso perchè c'è un solo campo, ma non in un form di registrazione utente dove ci sono un sacco di campi da ricompilare) o in qualche modo ricompilo il campo una volta rilevato l'errore.
    Se invece riesci a dirmi perchè si ricarica la pagina meglio ancora
    Grazie.

    Stefano
    Stefanoxjx

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 © 2024 vBulletin Solutions, Inc. All rights reserved.