Ciao a tutti,
so che non sarò il primo a dirlo ma ho un disperato bisogno di aiuto per risolvere un problema di codice PHP.
Dato che non sono un genio di tale materia ma solo alle prime armi, spero mi possiate aiutare.
Ho creato un database in MySQL che viene alimentato da un form in una pagina PHP che funziona perfettamente.
L'output generato è una tabella con le sue celle perfettamente riempite con i dati forniti dal form appenza menzionato e si auto-incrementa ogni volta che si aggiungono altri dati con questo form.
Ho poi creato una pagina php per cancellare una riga della tabella nel caso in cui mi serva cancellare tutti i dati di quel "id" ed un'altra pagina php per modificare i dati di una determinata riga della tabella.
Nella tabella di fianco ad ogni "id" ci sono due link per le summenzionate pagine di cancellazione e modifica.
La pagina di cancellazione funziona perfettamente ...... la pagina di modifica no!
La risposta che ottengo è che i dati sono stati modificati ma in realtà se guardo la tabella (l'output) nella riga che ho scelto di modificare non è successo assolutamente nulla!
Facendo l'upload della pagina di modifica non ottengo nessuna risposta di errore; quindi significa che il codice è giusto .... peccato che non fa il mestiere che dovrebbe fare e cioè modificare i dati di una specifica riga nel database.
Qui di seguito il codice della pagina "incriminata". Dove diavolo sta l'errore ???
Grazie grazie grazie grazie mille e mille per tutto l'aiuto che potrete darmi!
<?
include ("config.inc.php");
include ("top_foot.inc.php");
//intestazione
top();
?>
<html><head>
<title>Modifica di un record</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body,td,th {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
}
-->
</style></head>
<body>
<?php
$host = 'localhost' ;
$user = 'user' ;
$password = 'password' ;
$db_name = 'database';
$confirm=$_REQUEST['confirm'];
$id=$_REQUEST['id'];
$db = mysql_connect($host, $user, $password)
or die ("Impossibile connettersi al server $host");
mysql_select_db($db_name, $db)
or die ("Impossibile connettersi al database $db_name");
if (!$confirm)
{
$query = "select * from rubrica where id=$id";
$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
{
$promotore=$_REQUEST['promotore'];
$nome_azienda=$_REQUEST['nome_azienda'];
$settore=$_REQUEST['settore'];
$città=$_REQUEST['città'];
$indirizzo=$_REQUEST['indirizzo'];
$nome_contatto=$_REQUEST['nome_contatto'];
$telefono=$_REQUEST['telefono'];
$email=$_REQUEST['email'];
$sede_estero=$_REQUEST['sede_estero'];
$azioni=$_REQUEST['azioni'];
$progressione=$_REQUEST['progressione'];
$risultato_finale=$_REQUEST['risultato_finale'];
$note=$_REQUEST['note'];
$query = "update rubrica set
promotore=\"$promotore\","
. " nome_azienda=\"$nome_azienda\","
. " settore=\"$settore\","
. " città=\"$città\","
. " indirizzo=\"$indirizzo\","
. " nome_contatto=\"$nome_contatto\","
. " telefono=\"$telefono\","
. " email=\"$email\","
. " sede_estero=\"$sede_estero\","
. " azioni=\"$azioni\","
. " progressione=\"$progressione\","
. " risultato_finale=\"$risultato_finale\","
. " note=\"$note\","
. "where id=$id";
$dbResult = mysql_query($query, $db);
$AffectedRows = mysql_affected_rows($db);
if ($AffectedRows!=0)
{
print("<h3>Il record è stato aggiornato</h3>");
print("<h3><a href=\"query.php\">Torna alla lista</a></h3>");
}
mysql_close($db);
}
?>
</body>
</html>