Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    163

    Modificare dati visualizzati in una maschera

    Ciao a ttt...

    Dopo molti sbattimenti, sono riuscito a creare il code per la visualizzazione di una stringa di record prelevati da un db...

    Ora vorrei inserire la funzionalità "Modifica" in questa pagina, ma nn so da dove iniziare...


    Codice PHP:
    <?php 
    $host 
    "xxxx";$user "xxxx";$pass "xxxx";$db "xxxxxx";$dbname "portale"$connessione=mysql_connect($host,$user,$pass)or die (mysql_error()); $dbsel mysql_select_db($db $connessione)or die (mysql_error()); 
    $id=$_GET['id'];

        
    $query mysql_query("SELECT * FROM agenda_lavori where id = " $id$connessione); 
                echo 
    '<table border="1" cellpadding="10" cellspacing="0" align="center"><tr><td><b>Num</b></td><td><b>Data</b></td><td><b>Cliente</b></td><td><b>Tipologia Lavoro</b></td><td><b>Articolo</b></td><td><b>Note</b></td><td><b>Prezzo Preventivato Iva Escl.</b></td><td><b>Scadenza</b></td><td></td>
    </tr>     '
    ; while ($row mysql_fetch_array($query)){    echo '<tr><td>' $row['id'] . '</td><td>' $row['data'] . '</td><td>' $row['ragionesociale'] . '</td><td>' $row['tipologia_lavoro'] . '</td><td>' $row['articolo'] . '</td><td>' $row['note'] . '</td><td>' $row['prezzo'] . '</td><td>' $row['scadenza'] . '</td>
    <td><a href="delete.php?id=' 
    $row['partitaiva'] . '">[Visualizza]</a></td></tr>         ';} echo '</table> ';                mysql_close($connessione);?>
    Input che mi avviino??? Non so da dove iniziare...

  2. #2
    Devi studiarti il tag FORM di HTML e la gestione delle maschere di php (tipicamente l'uso di $_POST per ricevere il submit (invio) di una FORM).
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    163
    Allora, ho proceduto cosi:
    ...
    //Modifica PREZZO
    {
    echo "<form name='' action='' method=POST>";

    echo " - prezzo: ";
    echo " <input type='text' name='prezzo' value='";
    echo $row['prezzo'];

    echo"'/><input type='submit' name='mod' value='Modifica'></form><br/>";
    }




    IF (isset($_POST['mod'])){
    $id=$_POST['id'];
    $prezzo=$_POST['prezzo'];
    $sql="UPDATE agenda_lavori SET prezzo = '$prezzo' WHERE Id = ".id."";
    mysql_query($sql) or die("Errore:".mysql_error());
    }



    //Modifica SCADENZA
    {
    echo "<form name='' action='' method=POST>";

    echo " - scadenza: ";
    echo " <input type='text' name='scadenza' value='";
    echo $row['scadenza'];

    echo"'/><input type='submit' name='mod' value='Modifica'></form><br/>";
    }




    IF (isset($_POST['mod'])){
    $id=$_POST['id'];
    $scadenza=$_POST['scadenza'];
    $sql="UPDATE agenda_lavori SET scadenza = '$scadenza' WHERE Id = ".id."";
    mysql_query($sql) or die("Errore:".mysql_error());
    }





    ...

    Pero nn capisco 2 cose:
    1) perche quando modifico unsolo campo mi cancella il valore degli altri 2;
    2) Perche devo refreshare la pagina a ogni modifica...

  4. #4
    Allora, prima di tutto, tu vai a leggere $_POST["id"] ma non hai mai inserito nella maschera html nessun campo (nemmeno un INPUT type="hidden") che lo contenga, quindi è impossibile che $_POST["id"] contenga qualcosa, e quindi non vedo come le query di update che fai possano funzionare correttamente.

    Poi devi anche verificare attentamente ciò che scrivi nell'html: non è una buona idea che l'action di una form sia vuota, e soprattutto il tuo codice php non riesce affatto a distinguere se è stata usata la prima maschera o la seconda... Infatti quando si fa click sul primo submit, nel tuo codice si attivano sia le if che salvano la prima maschera sia quelle che salvano la seconda, e questo non va bene...

    Il mio consiglio è: sei troppo inesperto per gestire la difficoltà aggiunta di avere più maschere in una sola pagina, inizia con UNA sola FORM per pagina, e inizia SEPARANDO in due diverse pagine php il codice che mostra la form e quello che riceve il post e salva le modifiche.
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

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.