Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    892

    Problema con modifica record

    Salve a tutti,
    ho un problema con l'update di un record da Mysql.
    Dunque, io ho una tabella con un link che passa il valore di un record alla pagina di modifica del record stesso. Vorrei che un solo valore ("riferimento") venisse modificato automaticamente scrivendo l'ora attuale.

    Io ho creato il codice della pagina di modifica, non mi dà errore, ma mi restituisce una pagina bianca SENZA SCRIVERE IL CAMPO...

    Dove sbaglio? questo è il codice:

    <html>
    <head>
    <title>Consorzio di Area Vasta Nord Ovest Toscana</title>
    </head>
    <body>
    <font face="Arial" size="2">
    <?php

    $host = 'localhost';
    $user = 'nomeutente';
    $password = 'password';
    $database = 'nomedb';

    $id=$_REQUEST['id'];

    $db = mysql_connect($host, $user, $password)

    or die ("Impossibile connettersi al server $host");

    mysql_select_db($database, $db)

    or die ("Impossibile connettersi al database $database");


    {

    $query = "select id, riferimento from determinazioni where id=$id";

    $dbResult = mysql_query($query, $db);
    $AffectedRows = mysql_affected_rows($db);


    $riferimento=(Time());


    $query = "update determinazioni set
    riferimento=\"$riferimento\","
    . " where id=$id";

    $dbResult = mysql_query($query, $db);
    $AffectedRows = mysql_affected_rows($db);
    }

    if ($AffedtedRows!=0)
    {

    print("Il riferimento è stato correttamente inserito");
    print("<a href=\"addrife2.php\">Aggiungi nuovo riferimento</a>");

    }

    {

    mysql_close($db);

    }

    ?>
    </font>
    </body>
    </html>

  2. #2
    Un paio di errori...

    1) mysql_affected_rows non va dopo la select. Lo puoi comunque togliere visto che non serve a nulla.

    2) Hai una virgola di troppo nell'update, prima di WHERE.

    Se metti la segnalazione di errore alla query te lo dovrebbe dire.

    $dbResult = mysql_query($query, $db) OR DIE (mysql_error());



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

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    892
    Era come dicevi tu, grazie mille!!
    Volevo però chiederti anche un'altra cosa, se non è troppo:
    io vorrei che il codice generato non fosse mai ripetibile nel tempo (per intenderci: se oggi alle 9, 30 min. e 27 secondi inserisco una modifica e domani alle 9, 30 mon. e 27 secondi ne inserisco un'altra in un altro record, il codice è uguale perché è legato all'ora).

    Vorrei quindi fare un codice che fosse Date()+Time()

    Come posso unire le due funzioni?

    tipo così:

    $riferimento=(Time())(Date());

    Se faccio così mi dà errore...

    Scusa ancora...
    Franz

  4. #4
    Il dato che inserisci e' un TIMESTAMP UNIX il che significa il numero dei secondi intercorsi dal 01-01-1970 00:00:00 al momento dell'assegnazione di TIME() alla variabile $riferimento.

    Quindi contiene tutti i riferimenti assoluti di quel momento e non ripetibili.

    Forse confondi TIME() di PHP con il campo in formato TIME di MySQL...
    Il dato TIME() messo in $riferimento, va inserito in un campo di tipo INT(10) e trattato come dato numerico.



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

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    892
    ho capito perfettamente, ti prego di scusare la mia ignoranza...
    Grazie mille,
    Franz

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.