Buona sera, mi scuso per il disturbo, premetto che sono inesperto nel php ma ho creato insieme all'aiuto di due amici un gestionale per il mio centro addestramento. Funziona tutto a dovere, un sito semplice semplice che non deve fare grandi cose, ma c'è un problema che sembra molto difficile da sormontare.
Ho nel mio database mysql una tabella chiamata
attivita e questa tabella ha 4 colonne
id | IDCane | attivita | data
io dovrei fare un modo che mi compaiano tutte le attivita e data con lo stesso IDCane e che siano editabili.
Ad esempio
Attività: [attività già presente nel database ma editabile]
Data: [data già inserita ma editabile]
Attività: .....
Data: ....
Attività:...
Data:....
In pratica tutte le attività per quello specifico IDCane che può essere una o che possono essere anche 200
Incollo qui il codice che però mi stampa e rende editabile solo la prima attività e la prima data di IDCane
Ho nel mio database mysql una tabella chiamata
attivita e questa tabella ha 4 colonne
id | IDCane | attivita | data
io dovrei fare un modo che mi compaiano tutte le attivita e data con lo stesso IDCane e che siano editabili.
Ad esempio
Attività: [attività già presente nel database ma editabile]
Data: [data già inserita ma editabile]
Attività: .....
Data: ....
Attività:...
Data:....
In pratica tutte le attività per quello specifico IDCane che può essere una o che possono essere anche 200
Incollo qui il codice che però mi stampa e rende editabile solo la prima attività e la prima data di IDCane
PHP:
<?php session_start(); ?>
<?
if ((!isset($_SESSION['login'])))
{
?>
<script type="text/javascript">location.href="index.php"</script>
<?
}
//includo la configurazione del database
include("connection.php");
?>
<?
// crea il form di modifica record
// dal momento che questo modulo è utilizzato più volte in questo file, ho fatto una funzione facilmente riutilizzabile
function renderForm($IDCane, $attivita, $data, $error)
{
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<link rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>
<br /><br />
<center>
<div id="boxAdmin">
<br />
<img src="image/logo.png" width="100px" />
<br /><br /><br /><br />
<fieldset style="width:800px; border: 0;">
<table border="0" width="800px">
<tr>
<td align="left"><a href="admin.php">homepage</a> > lista clienti</a></td>
<td align="right"><a href="admin.php">Indietro</a></td>
</tr>
</table>
<br /><br /><br />
<table align="left" border="0" width="800px" cellpadding="0px" cellspacing="0px">
<?
// se ci sono errori, vengono visualizzati
if ($error != '')
{
echo '<div style="padding:4px; border:1px solid red; color:red;">'.$error.'</div>';
}
?>
<form action="" method="post">
<input type="hidden" name="IDCane" value="<?php echo $IDCane; ?>"/>
<div>
<p><strong>IDCane:</strong> <?php echo $IDCane; ?></p>
<strong>attivita: </strong> <input type="text" name="attivita" value="<?php echo $attivita; ?>"/><br/> <br/>
<strong>Data: </strong> <input type="text" name="attivita" value="<?php echo $data; ?>"/><br/><br/>
<input type="submit" name="submit" value="Invia">
</div>
</form>
</body>
</html>
<?
}
// verifica se il modulo è stato inviato. Se lo è, inizia a elaborare il modulo e lo salva nel database
if (isset($_POST['submit']))
{
// verificare che il valore di 'IDCane' sia un intero valido prima di ottenere i dati del modulo
if (is_numeric($_POST['IDCane']))
{
// ottenere i dati del modulo e verific che siano valIDCanei
$IDCane = $_POST['IDCane'];
$attivita = mysql_real_escape_string(htmlspecialchars($_POST['attivita']));
$data = mysql_real_escape_string(htmlspecialchars($_POST['data']));
{
// salva i dati nel database
mysql_query("UPDATE attivita SET IDCane='$IDCane', attivita='$attivita', data='$data' WHERE IDCane='$IDCane'")
or die(mysql_error());
// una volta salvato, si viene reindirizzati alla pagina di visualizzazione
header("Location: lista-cliente.php");
}
}
else
{
// Se l' 'IDCane' non è valido, viene visualizzato un errore
echo 'Error!';
}
}
else
// se il kodulo non è stato inviato, ottengo i dati dal db e visualizzare il modulo
{
// ottiene il valore 'IDCane' dall'URL (se esiste), assicurandosi che sia valIDCaneo (controlla che sia numerico/maggiore di 0)
if (isset($_GET['IDCane']) && is_numeric($_GET['IDCane']) && $_GET['IDCane'] > 0)
{
// query db
$IDCane = $_GET['IDCane'];
$result = mysql_query("SELECT * FROM attivita WHERE IDCane=$IDCane")
or die(mysql_error());
$row = mysql_fetch_array($result);
// verifica che l' 'ID' corrisponda a una riga nel database
if($row)
{
// ottiene i dati dal db
$IDCane = $row['IDCane'];
$attivita = $row['attivita'];
$data = $row['data'];
// visualizza il modulo
renderForm($IDCane, $attivita, $data);
}
else
// se non corrisponde visualizza il risultato
{
echo "Nessun risultato!";
}
}
else
// se l' 'IDCane' nell'URL non è valido, o se non vi è alcun valore di 'IDCane', visualizza un errore
{
echo 'Errore!';
}
}
?>
Ultima modifica di un moderatore: