Visualizzazione dei risultati da 1 a 9 su 9

Discussione: aggiornamento dati

  1. #1

    aggiornamento dati

    Ho creato uno script che da un form inserisce dati in un database mysql.....è tutto ok.
    In fase di modifica dati non riesco ad effettuare le modifiche richiamando i dati dal database.
    Mi piacerebbe che un form richiami i dati inseriri dagli utenti per poterli modificare.
    IL campo value del form non funziona. Vi posto il codice:


    <?php
    session_start();
    ?>
    <title>ricorda</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
    <?php
    echo "<hr>";
    echo "mi ricordo di te, sei ".$_SESSION["username"]."
    ";
    ?>

    <?php

    $pagename = "Modifica";

    require_once ("menu.php");

    $link = mysql_connect ("localhost", "root", "") or die ("connessione non riuscita");

    mysql_select_db ("blog") or die ("Selezione del DB non riuscita: " . mysql_error());

    $id=$_REQUEST['id'];
    $sql = "SELECT * FROM articoli WHERE id=".$id;

    //echo $sql;

    $result = mysql_query ($sql);
    if (!$result) die ("Non sono riuscito a fare la query");

    if ($row = mysql_fetch_assoc($result)) {
    $autore = $row["autore"];
    $titolo = $row["titolo"];
    $abstract = $row["abstract"];
    $contenuto = $row["contenuto"];
    } else die ("Non c'è l'elemento nel database");



    echo $autore;
    echo $titolo;
    echo $abstract;
    echo $contenuto;

    ?>
    <form enctype='multipart/form-data' action='esegui_modifica.php?id=<?=$id?>' method='post'>
    <table border="0" style="border-collapse: collapse" bordercolor="#000066">
    <tr>
    <th colspan="2">Inserimento contenuti</th>
    </tr>
    <tr>
    <td width="10%" align="right">Autore</td>
    <td><input type=text name='autore' size=20 value="<?=$autore ?>">*</td>
    </tr>

    <tr>
    <td width="10%" align="right">Titolo</td>
    <td><input type=text name='titolo' size=20 value="<?=$titolo ?>">*</td>
    </tr>
    <tr>
    <td width="10%" align="right">Abstract</td>
    <td><input type=text name='abstract' size=30 value="<?=$abstract ?>">*</td>
    </tr>
    <tr>
    <td width="10%" align="right">Contenuto</td>
    <td><textarea cols="60" rows="5" name="contenuto" value="<?=$contenuto ?>"></textarea></td>
    </tr>
    <tr>
    <td></td>
    <td height="25" width="244">
    <p align="center"><font face="Verdana" size="2">
    <input type=submit value='Invia'>
    <input type=reset value='Cancella'>
    </font></td>
    </tr>
    </table>
    </form>

    Grazie

  2. #2
    value="<?=$autore ?>"

    correttamente è così

    value="<?php echo "$autore"; ?>"

    usa sempre questa sintassi <?php ..... ?>


  3. #3
    Ok adesso ho due problemi:
    - solo nel campo contenuto non viene richiamato il form
    - quando eseguo gli aggiornamenti mi dice che è tutto ok ma i dati non vengono aggiornati.
    Posto il codice dello script che dovrebbe eseguire le modifiche

    <?php
    session_start();
    ?>
    <title>ricorda</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
    <?php
    echo "<hr>";
    echo "mi ricordo di te, sei ".$_SESSION["username"]."
    ";
    ?>

    <?php

    $pagename = "Esegui modifica";

    require_once ("menu.php");
    $autore = $_POST ["autore"];
    $titolo = @$_POST ["titolo"];
    $abstract = @$_POST ["abstract"];
    $contenuto = $_POST ["contenuto"];
    $id = $_REQUEST['id'];

    $link = mysql_connect ("localhost", "root", "") or die ("Non mi posso connettere");
    mysql_select_db ("blog") or die ("Non mi posso connettere al DB");

    $sql = "UPDATE articoli SET autore='$autore', titolo='$titolo', abstract='$abstract', contenuto='$contenuto' WHERE id = '$id'";
    $result = mysql_query ($sql) or die ("query non funzionante = $sql");
    mysql_close ($link);

    if ($result) echo "inserimento eseguito con successo";


    ?>

  4. #4
    <textarea cols="60" rows="5" name="contenuto" value="<?=$contenuto ?>"></textarea>

    il contenuto della texarea va qui


    <textarea cols="60" rows="5" name="contenuto"> <?php echo"$contenuto"; ?></textarea>

    prova così
    <form enctype='multipart/form-data' action='esegui_modifica.php' method='post'>
    <input type="hidden" name="id" value="<?php echo"$id"; ?>">

    il campo hidden è un campo nascosto che viene utilizzato per memorizzare variabili o dati come in questi, non ti modifica i dati perchè probabilmente non vede l'id.

    fai echo"$sql"; dopo la query e vedi che ti stampa!!!

    - solo nel campo contenuto non viene richiamato il form
    non ho capito?

  5. #5
    Roberto sei un GRANDEEEEEEEEEE !!!!!!!!!!!
    Grazie

  6. #6
    Figurati!!!!

    un 'ultima cosa evita di usare la @ perchè non fa altro che nascondere gli errori ma non li corregge, ricordati di usare sempre <?php .. ?>


  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    257
    io ho usato questo ma non va perchè?

    Codice PHP:
     <td><input name="uploadedfile" input type="file"  id="uploadedfile" size="40" value="<?php echo $risultati["imm1"]; ?>"></td>

    vorrei che mi venisse scritto il nome del file che è già caricato nel db.

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    257
    up

  9. #9
    non puoi dare un valore ad un campo file!!!


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.