Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 37

Discussione: Modifica Di Un Record

  1. #1

    Modifica Di Un Record

    Ho copiato da un libro php uno script che crea dinamicamente un form di modifica dei dati il problema è che non capisco il perchè mi dia sempre questo errore:

    Warning: mysql_data_seek() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 30

    Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 32

    Warning: Invalid argument supplied for foreach() in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 37


    Warning: mysql_free_result() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 49

    il codice è:

    <html>
    <head>
    <title>Modifica di un record</title>
    </head>
    <body>
    <?php

    $host = 'localhost';
    $database = 'legacalcio';
    $user = 'root';
    $password = '';

    $confirm=$_REQUEST['confirm'];
    $cod_giocatore=$_REQUEST['cod_giocatore'];
    $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");

    if (!$confirm)
    {
    $query = "select * from giocatori where cod_giocatore=$cod_giocatore";
    $dbResult = mysql_query($query, $db);
    $AffectedRows = mysql_affected_rows($db);

    if($AffectedRows==0)
    {
    print("<h3> Non esistono record con i criteri selezionati</h3>");
    }
    else
    {
    mysql_data_seek($dbResult,0);

    $row=mysql_fetch_row($dbResult);

    print("<table>");
    print("<form method=\"post\" action=\"{$_SERVER['PHP_SELF']}\">");

    foreach ($row as $k => $v)
    {
    $myfield = mysql_fetch_field($dbResult,$k);
    print("<tr><td>$myfield->name</td>");
    print("<td><input type=\"text\" value=\"". $v . "\" name=\"" . $myfield->name . "\" size=\"100\" maxlenght=\"100\"></td></tr>");
    }

    print("<tr><td colspan=\"2\"><input type=\"submit\" value=\"Conferma modifiche\"></td></tr> ");
    print("<input type=\"hidden\" name=\"confirm\" value=\"1\">");
    print("</form>");
    print("</table>");

    mysql_free_result($dbResult);
    mysql_close($db);
    }
    }
    else
    {
    $cod_giocatore=$_REQUEST['cod_giocatore'];
    $nome=$_REQUEST['Nome'];
    $cognome=$_REQUEST['Cognome'];
    $data_nascita=$_REQUEST['Data_Nascita'];
    $nazione=$_REQUEST['Nazione'];
    $ruolo=$_REQUEST['Ruolo'];
    $squadra=$_REQUEST['Squadra'];
    $squadra_esordio=$_REQUEST['Squadra_Esordio'];
    $data_esordio=$_REQUEST['Data_Esordio'];
    $gol_carriera=$_REQUEST['Gol_Carriera'];

    $query = "update giocatori set cod_giocatore=\"$cod_giocatore\","
    . " nome=\"$nome\","
    . " cognome=\"$cognome\","
    . " data_nascita=\"$data_nascita\","
    . " nazione=\"$nazione\","
    . " ruolo=\"$ruolo\","
    . " squadra=\"$squadra\","
    . " squadra_esordio=\"$squadra_esordio\","
    . " data_esordio=\"$data_esordio\""
    . " gol_carriera=\"$gol_carriera\""
    . " where cod_giocatore=$cod_giocatore";
    $dbResult = mysql_query($query, $db);
    $AffectedRows = mysql_affected_rows($db);

    if ($AffectedRows!=0)
    {
    print("<h3>Il record è stato aggiornato</h3>");
    print("<h3><a href=\"index.php\">Torna alla lista</a></h3>");
    }
    mysql_close($db);
    }
    ?>
    </body>
    </html>





    Potete aiutarmi?
    grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    questa non è così,
    Codice PHP:
    $AffectedRows mysql_affected_rows($db); 
    ma così:
    Codice PHP:
    $AffectedRows mysql_affected_rows($dbResult); 
    Jekkil

  3. #3
    grazie solo che mi rimane questo problema:

    Warning: mysql_affected_rows() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 22

    e la linea 22 sarebbe quella che tu mi hai fatto cambiare

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    Perdonami, l'istruzione è giusta come l'avevi fatta tu...
    quindi:

    Codice PHP:
    $AffectedRows mysql_affected_rows($db); 
    prova a mettere, subito dopo questo:

    Codice PHP:
    if($AffectedRows==-1)
    {
    print(
    "<h3> Problemi durante l'esecuzione della query</h3>");

    e vedi se per caso esce questo
    Jekkil

  5. #5
    si la scritta Problemi durante l'esecuzione della query appare e mi da sempre gli stessi errori

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    allora subito dopo questa riga
    Codice PHP:
    $dbResult mysql_query($query$db); 
    metti questa
    Codice PHP:
    var_dump($dbResult); 
    vedi che esce fuori e postalo qui!
    Jekkil

  7. #7
    questo è tutto quello che mi appare:

    bool(false)
    Problemi durante l'esecuzione della query


    Warning: mysql_data_seek() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 35

    Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 37

    Warning: Invalid argument supplied for foreach() in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 42


    Warning: mysql_free_result() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 54

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    ok, allora ci sono problemi con la query:

    dopo
    Codice PHP:
    $query "select * from giocatori where cod_giocatore=$cod_giocatore"
    metti
    Codice PHP:
    echo $query
    e fai la solita cosa, vedi cosa esce fuori!
    Jekkil

  9. #9
    Viene fuori questo:

    select * from giocatori where cod_giocatore=bool(false)
    Problemi durante l'esecuzione della query


    Warning: mysql_data_seek() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 36

    Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 38

    Warning: Invalid argument supplied for foreach() in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 43


    Warning: mysql_free_result() expects parameter 1 to be resource, boolean given in C:\Users\alessandro\Desktop\xampp\htdocs\modifica. php on line 55

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    ok ecco il problema!! La variabile $cod_giocatore non contiene nulla!

    l'istruzione in cui viene valorizzata è questa:
    Codice PHP:
    $cod_giocatore=$_REQUEST['cod_giocatore']; 
    ora devi capire da cosa viene richiamato questo script, e quindi chi passa il valore codice giocatore allo script. In questo purtroppo io non posso aiutarti...
    Jekkil

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.