Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it L'avatar di noos
    Registrato dal
    Jul 2003
    Messaggi
    1,001

    problema modifica record db mysql

    ho il problema di modificare dei record nel db, praticamento la modifica non viene effettuata

    posto il codice

    pagina 0.php prendo tutti i dati

    Codice PHP:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
    <title>modulo host</title>
     <link rel="stylesheet" type="text/css" href="../host.css" media="screen, pojection" />
      </head>
      <body>
      
    <h4> Modifica record</h4>
    <?php
    # include il file esterno
    require ("../inc.php");
    require (
    "../conn.php");


    $sql="SELECT * FROM prodotti ORDER BY IDprodotti";

    $risultati_mysql=mysql_query($sql,$connessione);
    $num_righe=mysql_num_rows($risultati_mysql);

    if  ( 
    $num_righe == ) {
    echo 
    "Spiacente, non ci sono informazioni";
    } else {
    # abbiamo dei risultati
    # crea la tabella
    echo "<table border=\"1\">
      <caption>Riepilogo dati inseriti</caption>
      <tbody>"
    ;
      
      echo 
    "<tr><th>prodotto1</th><th>prodotto2</th><th>prodotto3<th>IDprodotti</th></tr>";

    while (
    $riga=mysql_fetch_array($risultati_mysql))
    {
    $prodotto1=$riga["prodotto1"];
    $prodotto2=$riga["prodotto2"];
    $prodotto3=$riga["prodotto3"];
    $IDprodotti=$riga["IDprodotti"];

    echo 
    "<TR><TD><A HREF=\"1.php?riga_id=$IDprodotti\">$prodotto1</A></TD><TD>$prodotto2</TD>
    <TD>
    $prodotto3</TD>
    <TD>
    $IDprodotti</TD></TR>";

    }

    echo 
    "</tbody>";
    echo 
    "</table>";

    # fine dell'else
    mysql_close($connessione);
    ?>

    </body>
    </html>



    pagina 1.php, visualizzo solo il record per la modifica
    Codice PHP:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
    <title>modulo host</title>
     <link rel="stylesheet" type="text/css" href="../host.css" media="screen, pojection" />
      </head>
      <body>

    <h4> Modifica record</h4>

    <?php


    require ("../inc.php");
    require (
    "../conn.php");


    $sql="SELECT * FROM prodotti WHERE IDprodotti='$riga_id'";

    $risultati_mysql=mysql_query($sql,$connessione);
    $num_righe=mysql_num_rows($risultati_mysql);

    if  ( 
    $num_righe == ) {
    echo 
    "Spiacente, non ci sono informazioni";
    } else {
    # abbiamo dei risultati

    $risultati_mysql=mysql_query($sql,$connessione);
    while (
    $riga=mysql_fetch_array($risultati_mysql))
    {

    $prodotto1=$riga["prodotto1"];
    $prodotto2=$riga["prodotto2"];
    $prodotto3=$riga["prodotto3"];
    $IDprodotti=$riga["IDprodotti"];

    }
    echo 
    "<form METHOD=\"POST\" ACTION=\"2.php\">";


    echo 
    "prodotto1
     
    <textarea name=\"prodotto1\" rows=\"3\" cols=\"30\" value=\"
    $prodotto1\">$prodotto1</textarea>
    "
    ;


    echo 
    "prodotto2
     
    <textarea name=\"prodotto2\" rows=\"3\" cols=\"30\" value=\"
    $prodotto2\">$prodotto2</textarea>
    "
    ;


    echo 
    "prodotto3:
     
    <input name=\"prodotto3\" type=\"text\"  size=\"40\" value=\"
    $prodotto3\">
    "
    ;



    echo 
    "<input type=\"hidden\" name=\"prodotto1\" value=$prodotto1>";
    echo 
    "<input type=\"hidden\" name=\"prodotto2\" value=$prodotto2>";
    echo 
    "<input type=\"hidden\" name=\"prodotto3\" value=$prodotto3>";
    echo 
    "<input type=\"hidden\" name=\"IDprodotti\" value=$IDprodotti>";

    echo 
    "<INPUT TYPE=SUBMIT VALUE=\"Modifica il record !\">
    "
    ;

    echo 
    "</form>";
    # fine dell'else
    mysql_close($connessione);

    ?>

    </body>
    </html>

    pagina 2.php faccio upload del record
    Codice PHP:


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
    <title>modulo host</title>
     <link rel="stylesheet" type="text/css" href="../host.css" media="screen, pojection" />
      </head>
      <body>
    <?php

    require ("../inc.php");
    require (
    "../conn.php");




    $sql="UPDATE prodotti SET prodotto1='$_POST[prodotto1]', prodotto2='$_POST[prodotto2]', prodotto3='$_POST[prodotto3]' WHERE IDprodotti='$IDprodotti'";


    if (!
    mysql_query($sql,$connessione)) {
    echo 
    "Errore, modifica del record non riuscita
    "
    ;
    echo 
    "
    <A HREF=\"0.php\"> Indietro</A>"
    ;
       exit;
      } else {
    # Modifica OK, informa l'utente
    echo "Tabella aggiornata, [".mysql_affected_rows()."] record modificati.
    "
    ;
        echo 
    "Il record è stato modificato";
    }

    echo 
    "
    <A HREF=\"0.php\"> Indietro</A>"
    ;
    mysql_close($connessione);
    ?>
    </body>
    </html>

    qualcosa non và
    Vola solo chi ha il coraggio di farlo

  2. #2
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    nella pagina 1.php la query deve essere

    Codice PHP:
    $sql="SELECT * FROM prodotti WHERE IDprodotti='$_GET[riga_id]'"
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  3. #3
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    ... o senza apici se si tratta di un campo nuumerico

    Codice PHP:
    $sql="SELECT * FROM prodotti WHERE IDprodotti=$_GET[riga_id] "
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  4. #4
    Utente di HTML.it L'avatar di noos
    Registrato dal
    Jul 2003
    Messaggi
    1,001
    ciao ade_v, grazie x avermi risposto

    purtroppo non funge
    Vola solo chi ha il coraggio di farlo

  5. #5
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    in 1.php

    fai una echo di $sql, così vedi quale query viene realmente data in pasto a mysql
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  6. #6
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    ...e in 2.php

    la query diventa

    Codice PHP:
    $sql="UPDATE prodotti 
    SET prodotto1='
    $_POST[prodotto1]', prodotto2='$_POST[prodotto2]', prodotto3='$_POST[prodotto3]' WHERE IDprodotti='$_POST[IDprodotti]'"
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  7. #7
    Utente di HTML.it L'avatar di noos
    Registrato dal
    Jul 2003
    Messaggi
    1,001
    Originariamente inviato da ade_v
    in 1.php

    fai una echo di $sql, così vedi quale query viene realmente data in pasto a mysql
    ho fatto echo della query
    e effettivamente mi stampa id del record che ho selezionato, per esempio se clicco sul secondo record nella pagina 1.php visualizzo il form con i rispettivi campi riempiti pronti per la modifica

    è nella pagina2.php che non fa update eppure gli passo le variabili giuste

    forse il problema è il tipo di metodo get oppure post???
    Vola solo chi ha il coraggio di farlo

  8. #8
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    nella pagina 0.php hai un link che passa una variabile GET la quale viene presa in carico in 1.php

    Codice PHP:
    $sql="SELECT * FROM prodotti WHERE IDprodotti=$_GET[riga_id] "
    In 1.php invece hai un bottone che scatena l'update sul db tramite passaggio di variabili POST

    Codice PHP:
    $sql="UPDATE prodotti 
    SET prodotto1='
    $_POST[prodotto1]', prodotto2='$_POST[prodotto2]', prodotto3='$_POST[prodotto3]' WHERE IDprodotti='$_POST[IDprodotti]'"
    Essendo su pagine distinte, GET e POST non si intralciano.


    Fai una echo di $sql anche in 2.php e vediamo che ti scrive a video
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  9. #9
    Utente di HTML.it L'avatar di noos
    Registrato dal
    Jul 2003
    Messaggi
    1,001
    a video mi stampa questo


    UPDATE prodotti SET prodotto1='libro', prodotto2='rivista', prodotto3='giornale', WHERE ID='2'
    Vola solo chi ha il coraggio di farlo

  10. #10
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    .. e se togli gli apici a
    Codice PHP:
    $_POST[IDprodotti
    ?


    Codice PHP:
    $sql="UPDATE prodotti 
    SET prodotto1='
    $_POST[prodotto1]', prodotto2='$_POST[prodotto2]', prodotto3='$_POST[prodotto3]' WHERE IDprodotti=$_POST[IDprodotti] "
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

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.