Ho due pagine php, una per l'inserimento dei dati (form) e l'altra contenente il vero e proprio codice php con le query per l'inserimento dati.
Solo che una volta inviati i dati e inseriti nel db, quando ricarico la pag vedo i dati ripetuti due volte e di conseguenza inseriti nel db una seconda volta....
a cosa è dovuto??
Avrò sbagliato qualcosa con il ciclo while??:dipser:
ho commentato il codice con le istruzioni da fare per capirci di più..
Solo che una volta inviati i dati e inseriti nel db, quando ricarico la pag vedo i dati ripetuti due volte e di conseguenza inseriti nel db una seconda volta....
a cosa è dovuto??
Avrò sbagliato qualcosa con il ciclo while??:dipser:
PHP:
<?php
//inizio la sessione utente
session_start();
Include("varDB.inc");
//creo una connessione al db e lo seleziono
$conn=mysql_connect("localhost","root","");
mysql_select_db("sito");
//inizializzo la variabile messaggio
$messaggio="";
?>
<html> <!-- striscia in alto-->
<head>
<link rel="stylesheet" type="text/css" href="stile.css">
<title>Inserisci </title>
</head>
<body>
<table>
<tr>
<td>
<p><font face="magneto" color="black" size="20px"><center><b><i>"LA BOTTEGA DELL'USATO"</i></b></center></p>
</td>
</tr>
</table>
<div id="menu">
<ul>
<?php
//controllo che ci sia una sessione utente, altrimenti "sessione scaduta"
if(isset($_SESSION['utente'])){
echo"<li><font face='georgia' color='red'size='4px'>ciao " . $_SESSION['utente'] . "</li>";
echo"<li><a href='login.php?azione=logout'>logout</a></li>";
echo"<li><a href='cancellato.php'>cancella</a></li>";
echo"<br>";
echo"<br>";
}else{
$messaggio= "sessione scaduta";
}
?>
</ul>
</div>
<?php
//controllo che ci sia una sessione utente, altrimenti "sessione scaduta", mostro il form di inserimento dati
if (isset($_SESSION['utente'])){
?>
<form method="POST" action="entra.php">
<p>Inserisci i tuoi annunci</p>
Titolo<input type="text" name="title" value=""/><br>
Testo<textarea name="body" cols="10" rows="10"></textarea>
<input type="submit" name="invia" value="inserisci"/>
</form>
<?php
}else{
echo"sessione scaduta";
}
?>
</body>
</html>
PHP:
<?php
//inizio la sessione utente
session_start();
include("varDB.inc");
//creo una connessione al db e lo seleziono
$conn=mysql_connect("localhost","root","");
mysql_select_db("sito");
//inizializzo la variabile messaggio
$messaggio="";
?>
<html>
<head>
<!-- striscia in alto -->
<title>annunci</title>
<link rel="stylesheet" type="text/css" href="stile.css">
</head>
<body>
<table>
<tr>
<td>
<p><font face="magneto" color="black" size="20px"><center><b><i>"LA BOTTEGA DELL'USATO"</i></b></center></p>
</td>
</tr>
</table>
<div id="menu">
<ul>
<?php
//controllo che ci sia una sessione utente, altrimenti "sessione scaduta"
if(isset($_SESSION['utente'])){
echo"<li><font face='georgia' color='red'size='4px'>ciao " . $_SESSION['utente'] . "</li>";
echo"<li><a href='login.php?azione=logout'>logout</a></li>";
echo"<li><a href='cancellato.php'>cancella</a></li>";
echo"<br>";
echo"<br>";
}else{
$messaggio= "sessione scaduta";
}
//richiamo i dati inseriti nel form tramite la variabile superglobale $_POST
$title=$_POST['title'];
$body=$_POST['body'];
//eseguo i controlli relativi alla compilazione dati
if($title=="" ||$body==""){
echo "Non hai riempito i campi";
}else{
//se è tutto ok, inserisco i dati nel db
$inserimentoannunci=mysql_query("INSERT INTO annunci_cerco (title,body) VALUES ('$title','$body')");
}
//se i dati sono inseriti mostro gli annunci inseriti
if($inserimentoannunci){
$risultato = mysql_query("SELECT * FROM annunci_cerco WHERE title='$title' AND body='$body' ");
//mostro tutti gli annunci inseriti
while ($riga = mysql_fetch_array($risultato)) {
echo $riga['title'] ;
echo"<br>";
echo"<br>";
echo"<br>";
echo $riga['body'];
}
//se ci sono problemi stampo messaggio di errore
}else{
$messaggio="errore";
}
//inteerrrompo la connessione con il db
mysql_close();
?>
</ul>
</div>
</body>
</html>
ho commentato il codice con le istruzioni da fare per capirci di più..