problema con inserimento nuovo record

skate84

Utente Attivo
16 Mag 2009
83
0
0
Ciaoooo,

ho questo problema...quando compilo una form, non mi inserisce i dati nel db... dovrebbe uscirmi un messaggio con scritto che il formulario è stato compilato correttamente...oppure che è impossibile inserire il record. Ma nulla di questo accade.

ecco i 2 file:

PHP:
<?php
			
$mese =  array('01'=>"Gennaio", '02'=>"Febbraio", '03'=>"Marzo", '04'=>"Aprile", '05'=>"Maggio", '06'=>"Giugno", '07'=>"Luglio", '08'=>"Agosto", '09'=>"Settembre", '10'=>"Ottobre", '11'=>"Novembre", '12'=>"Dicembre");
$date = new DateTime();	
$annoCorrente = $date->format('Y');
		?>
		
		<h2>Nuovo Appuntamento</h2>
		<br/>
		<table>
		<form method="post" action="?id=26">
		<tr><td> Oggetto </td>
			<td><input type="text" name="oggetto" size="40"></td>
		</tr>

		<tr><td> Data </td>
			<td>
				<select name="giorno">
					<option value="0">...</option>
					<?php
						for ($i=1;$i<32;$i++){
							$num = sprintf("%02d", $i);
							echo "<option value=\"$num\">$num</option>\n";	
						}
					?>
				</select>
	
				<select name="mese">
					<option value="0">...</option>
					<?php
					
						foreach ($mese as $k => $v){
							echo "<option value=\"".$k."\">".$v."</option>";
						}
					?>
				</select>
				
				<select name="anno">
					<option value="0">...</option>
					<?php
					
						for ($i=0;$i<=100;$i++){
							echo "<option value=\"".$annoCorrente."\">".$annoCorrente."</option>";
							$annoCorrente -= 1;	
						}
					?>
				</select>
			</td>
		</tr>
		
		<tr><td> Lingua </td>
			<td>	
				<?php
			  		$sel = "SELECT id_lingua, lingua FROM lingue";
			  		$res = mysql_query($sel) or die("Errore nella select");
			  		while($arr = mysql_fetch_array($res)) {
			     		echo $arr[1]."<input type='radio' name='linguaappuntamenti' value='".$arr[0]."'>";
			  		}
			  	?>

			</td>
		</tr>
		
		<tr><td> Testo </td>
			<td>
				<name="testo">
				<?php
					$oFCKeditor = new FCKeditor('testo') ;
					$oFCKeditor->BasePath = 'fckeditor/' ;
					$oFCKeditor->Value = $testo;
					$oFCKeditor->Width  = "580px";
                    $oFCKeditor->Height = "350px";
					$oFCKeditor->Create() ;
				?>
			</td>
		</tr>
						
		
		<tr><td></td>
			<td><input type="submit" name="submit" value="Registra"></td>
		</tr>
		</form>
		</table>
	</body>
</html>

PHP:
<?php
	
		$data_registrazione = date("Y-m-d H:i:s");
		$giorno = $_POST['giorno'];
		$mese = $_POST['mese'];
		$anno = $_POST['anno'];
		$data = $anno . '-' . $mese . '-' . $giorno . ' 00:00:00';
	
	//pulitura dei campi da stringhe pericolose
		$oggetto = trim(stripslashes($_POST['oggetto']));

		$linguaappuntamenti = $_POST['id_lingua'];
		$testo = trim(stripslashes($_POST['testo']));
		//$sValue = stripslashes( $_POST['testo'] );
		
		$oggetto = mysql_real_escape_string($oggetto);
		$testo = mysql_real_escape_string($testo);
		//$sValue = mysql_real_escape_string($testo);
		
		$oggetto = htmlentities($oggetto);
		$testo = htmlentities($testo);
		//$sValue = htmlentities($testo);
	
	//inserisco i dati completati nel formulario all'interno della banca dati
			$sql = "insert into appuntamenti" . "(oggetto, data, id_lingua, testo, data_registrazione)" .
			"VALUES('" . $_REQUEST['oggetto'] . "', '" . $data . "', '" . $_REQUEST['id_lingua'] . "', '" . $_REQUEST['testo'] . "', '" . $data_registrazione . "')";
			
					
		if(!mysql_query($sql, $db))
			{
			print("Attenzione, impossibile inserire il record");
			}
		else
			{
			print("Hai completato il formulario senza problemi. I tuoi dati sono stati registrati.");
			}
		mysql_close($db);
		
		
	?>

Chi mi sa aiutare???
 

abidibo

Nuovo Utente
11 Mag 2009
1
0
0
web2.otto.to.it
Ciao.
La segnalazione degli errori è attiva o disattivata?
non succede nulla di tutto quello, quindi cosa succede?
la variabile $db che si riferisce alla connessione è correttamente inizializzata?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
può essere una stupidaggine, ma ammesso che la connessione sia giusta, prova a scrivere

PHP:
$sql = "INSERT INTO appuntamenti" . " (oggetto, data, id_lingua, testo, data_registrazione)" .
            " VALUES('" . $_REQUEST['oggetto'] . "', '" . $data . "', '" . $_REQUEST['id_lingua'] . "', '" . $_REQUEST['testo'] . "', '" . $data_registrazione . "')";

non tanto il maiscolo ma uno spazia tra appuntamenti e (oggetto.... e tra ...registrazione) e VALUES

eventualmente subito di seguito inserisci

var_dump($sql); //var_dump questa sconosciuta
così verifichi che la querry venga scritta correttamente

p.s.
perchè nella query fai "." quando potresti scriverla


PHP:
$sql = "INSERT INTO appuntamenti (oggetto, data, id_lingua, testo, data_registrazione) VALUES ('$_REQUEST['oggetto']', '$data', '$_REQUEST['id_lingua']', '$_REQUEST['testo']','$data_registrazione')";
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
scusa mi sono accorto di una cosa che volevo domandarti

perchè giustamente fai il "trattamento" a $oggetto e $testo poi inserisci nel db i valori "non trattati"?
 

skate84

Utente Attivo
16 Mag 2009
83
0
0
p.s.
perchè nella query fai "." quando potresti scriverla

Lo so, la rendo più complicata eheh ma lo ripreso da un libro...

Cmq per la cronaca sono un P..LA :D sbagliavo a richiamare la pagina dall' index.php. Non è risolto il problema ma almeno riesco a vedere l'errore...praticamente non mi passa il valore della lingua.

Qualcuno mi sa dire il motivo? sbaglio qualcosa nel codice?
 
Ultima modifica:

skate84

Utente Attivo
16 Mag 2009
83
0
0
RISOLTOOOOOOO :)
PHP:
.........
$linguaappuntamenti = $_POST['linguaappuntamenti'];
......

PHP:
$sql = "insert into appuntamenti" . " (oggetto, data, id_lingua, testo, data_registrazione)" .
			" VALUES('" . $_REQUEST['oggetto'] . "', '" . $data . "', '" . $_REQUEST['linguaappuntamenti'] . "', '" . $_REQUEST['testo'] . "', '" . $data_registrazione . "')";

Sbaglio nelle cose più semplici :)
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
due cosine che magari potrebbero tornarti utili.

Se è attiva una sola connessione non c'è bisogno di passare il valore di connessione a mysql_query(), quindi a te basterebbe:
PHP:
mysql_query($sql)
Stesso discorso per mysql_close()

Per non incappare più in un errore come quello che ti è capitato ricordati che c'è mysql_error():
PHP:
mysql_query($sql) or die(mysql_error());
che ti stampa immediatamente l'errore in query
 
Discussioni simili
Autore Titolo Forum Risposte Data
M Problema inserimento parole con apostrofo nel db PHP 5
G inserimento csv in tabella mysql; problema con struttura PHP 11
M Problema con modulo registrazione e inserimento dati in database PHP 8
radioButton Problema inserimento stringa con apostrofo in database sql Database 21
B Problema inserimento dati con apostrofo MySQL 1
P Problema inserimento articolo con piu' tabelle PHP 1
M problema con l'inserimento di dati in un tag input PHP 3
A problema con l'inserimento di valori in una tabella dopo una ricerca da form Classic ASP 1
B Problema di inserimento "menu con css" in pagina web "con tabelle" HTML e CSS 5
J Problema con inserimento dati tabella PHP 4
asevenx problema con l'inserimento di un record nel database (caratteri non consentiti) PHP 11
G problema con inserimento dati PHP 4
F Problema con il modulo inserimento record Classic ASP 1
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
G Problema con Xampp Web Server 1
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
N Problema con position absolute e overflow HTML e CSS 4
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
K [PHP] Problema con variabili concatenate. PHP 1
O problema con query PHP 4
I problema con 2 account Posta Elettronica 1
L problema collegamento file css con html HTML e CSS 1
E Problema accesso a file con app sviluppata con MIT APP INVENTOR 2 Sviluppo app per Android 0
M Problema con Try Catch PHP 0
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
R problema con else PHP 0
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1
L Problema RAM con Tomcat 8 Apache 0
napuleone problema con sort e asort PHP 4
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
M Problema con controllo form in real time jQuery 6
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
G Problema con Get page PHP 4
P Problema con require once PHP 6
P Problema con i package Java 1
A Problema login con Safari PHP 14
F INDESIGN: problema esportazione esecutivo per la stampa con foto B/N Webdesign e Grafica 0
S problema con css bootstrap3 HTML e CSS 4
M .load() problema con caricamenti dinamici di js Javascript 0
G Problema con eccessiva nitidezza apertura Camera Raw Photoshop 0

Discussioni simili