Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Aggiornamento dati molto strano

    Ragazzi chiedo aiuto. Ho due file per modificare i dati inseriti nel mio db mysql.
    il primo è un form che mi fa vedere i dati inseriti e l'altro file salva gli eventuali cambiamenti.
    Quando modifico dal 1° record al 9° non ci sono problemi.
    Quando invece inizio a modificare al 10 in poi mi modifica il 1° record...
    Vi posto i due file.

    news_modifica2.php
    <?
    include("area_riservata.php");
    include ("config.inc.php");
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $id=$_POST["id"];
    $titolo = $_POST["titolo"];
    $data = $_POST["data"];
    $anno = $_POST["anno"];
    $autore = $_POST["autore"];
    $testo = $_POST["testo"];
    $argomento = $_POST["argomento"];
    $posizione = $_POST["posizione"];
    $immagine = $_POST["immagine"];
    $query = ("UPDATE Articoli SET titolo='$titolo', data='$data', anno='$anno', autore='$autore', testo='$testo', argomento='$argomento', posizione='$posizione', immagine='$immagine' WHERE id=$id");
    $result = mysql_query($query,$db) or die(mysql_error());
    ?>
    <center>TORNA A VISUALIZZARE TUTTI GLI ARTICOLI</center>
    news_modifica2.php
    <? include("area_riservata.php");
    include ("config.inc.php");
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    if (!isset($start) OR $start<0)
    $id=$_GET["id"];
    $query = mysql_query ("SELECT * FROM Articoli WHERE id= $id");
    $result = mysql_query($query, $db);
    $dati = mysql_fetch_array($query);
    $capo = chr(13);
    $dati[testo] = str_replace("
    ", $capo, $dati[testo]);
    ?>



    news_modifica.php
    <form method="post" action="news_modifica2.php">
    id:

    <input type="hidden" name="id" value="<?php echo $id[id]; ?>"/>
    Titolo:

    <input type="text" size="40" name="titolo" value="<?php echo $dati[titolo]; ?>"/>



    Data:<input type="text" size="12" name="data" value="<?php echo $dati[data]; ?>"/>


    Anno:<input type="text" size="10" name="anno" value="<?php echo $dati[anno]; ?>"/>


    Autore: <input type="text" size="40" name="autore" value="<?php echo $dati[autore]; ?>"/>


    Testo:

    <textarea name="testo" cols="60" rows="40"> <?php echo $dati[testo]; ?></textarea>

    Argomento:

    <input type="text" size="40" name="argomento" value="<?php echo $dati[argomento]; ?>"/>



    Immagine:

    <input type="text" size="40" name="immagine" value="<?php echo $dati[immagine]; ?>"/>



    Posizione:

    <input type="text" size="40" name="posizione" value="<?php echo $dati[posizione]; ?>"/>



    <input type="submit" value="Invia2" />
    </form>

    <?php mysql_close(); ?>

    Francesco
    http://www.cubamylove.com
    http://www.casadamarys.com
    Cuba Trinidad

  2. #2
    stampati l'array POST per vedere che hai.

    Occhio che a parita' di nome dell'indice associativo di GET/POST/COOKIE (GPC) vengono sovrascritti i valori.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    scusa come faccio a stamparlo???
    Francesco
    http://www.cubamylove.com
    http://www.casadamarys.com
    Cuba Trinidad

  4. #4
    cavoli fino al record 9 modifica tutto a perfezione... i problemi vengono dal dieci in poi!
    Francesco
    http://www.cubamylove.com
    http://www.casadamarys.com
    Cuba Trinidad

  5. #5
    l'ho già stampata ed è come ti dicevo.
    Fino al 9 tutto bene dal 10 in poi va a modificare il 1° record!!!
    Francesco
    http://www.cubamylove.com
    http://www.casadamarys.com
    Cuba Trinidad

  6. #6
    fai un po' di stampe di debug...

    stampa gli array $_GET e $_POST

    echo "<pre>";
    print_r($_GET);
    print_r($_POST);

    stampa le query (sia UPDATE che SELECT), poi metti gli apici a tutti gli indici associativi in news_modifica.php ..... es:

    <?php echo $dati['titolo']; ?>

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Grazie 1000 per i suggerimenti.
    Ho fatto tutto.
    in modifica.php passa il record corretto, ma è quando lo aggiorna che cade tutto, solo per i record dal 10 in poi...
    Francesco
    http://www.cubamylove.com
    http://www.casadamarys.com
    Cuba Trinidad

  8. #8
    cosa stampa questa query?

    codice:
    $query = ("UPDATE Articoli SET titolo='$titolo', data='$data', 
          anno='$anno', autore='$autore', testo='$testo', argomento='$argomento', 
          posizione='$posizione', immagine='$immagine' 
          WHERE id=$id");
    echo $query;

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Non si capisce molto il flusso e di sicuro mancano righe di codice.
    Vado ad immaginazione:
    nel file news_modifica.php tu scrivi:
    Codice PHP:
    <input type="hidden" name="id" value="<?php echo $id[id]; ?>"/>
    Mi chiedo:
    ma $id[id] che &egrave;? dove lo 'riempi'? &egrave; un array?
    infatti nel file news_modifica2.php :
    Codice PHP:
    $id=$_POST["id"]; 
    che di per s&eacute; sarebbe giusto, se non che la $_POST["id"] contiene il valore del campo hidden id della form, al quale &egrave; assegnato il valore contenuto in $id[id]

    Non &egrave; che avresti dovuto scrivere (in news_modifica.php):
    Codice PHP:
    <input type="hidden" name="id" value="<?php echo $dati[id]; ?>"/>
    P.S: quando posti del codice, racchiudilo fra: &#x005b;php&#x005d; e &#x005b;/php&#x005d;
    sar&agrave; letto moolto meglio!

    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  10. #10
    GRANDE ZAPPA!!!!!
    HAI PERFETTAMENTE RAGIONE!!!!
    TI RINGRAZIO VERAMENTE TANTISSIMO PER I VOSTRI CONSIGLI RAGAZZI!!!
    Francesco
    http://www.cubamylove.com
    http://www.casadamarys.com
    Cuba Trinidad

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.