Pagina 1 di 2

aiuto problema richiamo db

Inviato: 17/12/2015, 22:36
da Jmdesign
Ciao a tutti , piacere sono Fabio, questo è il mio primo post spero di trovar risposta.. prima cosa premetto che sono un novellino di php, sono praticamente alle primissime armi.. ora vorrei chiedere il vostro aiuto per capire una cosa che per voi è semplice ma per me non lo è :)
allora stiamo creando un compito scolastico e non troviamo l'errore :

Codice: Seleziona tutto

<!DOCTYPE html>
<html>
<head>

</head>
<body>
<?php

$nome=$_POST[nome];
$codice=$_POST[codice];
$anno=$_POST[anno];
$nazionalita=$_POST[nazionalita];

$db=mysql_connect("localhost","root","root");
if(!$db)
  echo "no connection"; 
else
{
 mysql_select_db("my_emanuelecaracci");

 $query = "insert INTO ES1_REGISTA VALUES ('codice', 'nome','nazionalita', 'anno_di_nascita'),('".$codice."','".$nome."','".$nazionalita."','".$anno."');";
 $result = mysql_query($query);
mysql_close();
	
 echo "<p>REGISTA INSERITO! : ".$nome."</p>";

}
?>


</body>
</html>
spiego meglio: praticamente questo è il file che secondo me contiene l'errore , viene richiamato dal form:

Codice: Seleziona tutto

<html>
<head>
<title>Inserisci Regista</title>
</head>
<body>
<p > <h1>Inserisci Regista</h1></p>
<form action="insRegista.php" method="POST" name="form">
<table width="360" border="1" >
  <tr>
    <td width="122"  ><label>Codice</label></td>
    <td width="1119"><input name="codice" id="codice" type="text" size="30" maxlength="6" /> </td>
  </tr>
  <tr>
    <td><label>Nome</label> </td>
    <td><input name="nome" id="nome" type="text" size="30" maxlength="30" /> </td>
  </tr>
  <tr>
    <td><label>Nazionalita'</label> </td>
    <td><input name="nazionalita" id="nazionalita" type="text" size="30" maxlength="50" /> </td>
  </tr>
  <tr>
    <td><label>Anno di Nascita</label> </td>
    <td><input name="anno" id="anno" type="text" size="4" maxlength="4" /> </td>
  </tr>
 <tr >
    <td colspan="2" align="center"><input name="submit" type="submit" value="INVIO" /></td>
 </tr>
</table>

</form>

</body>
</html>
una volta compilato il form dovrebbe registrare tutto nell'apposita sezione del DB invece non lo fa.. chi può aiutarmi?

Re: aiuto problema richiamo db

Inviato: 18/12/2015, 0:48
da frank
I dati si scrivono nel database?

Re: aiuto problema richiamo db

Inviato: 18/12/2015, 1:26
da Jmdesign
no :/

Re: aiuto problema richiamo db

Inviato: 18/12/2015, 2:09
da frank
Allora il problema è nell'inserimento.

Prendi esempio da questo:

Codice: Seleziona tutto

//INSER INTO contiene il NOME dei records, dall'alto verso il basso, che ci sono nella tabella del db 
//VALUES inserisce nella tabella del db i VALORI scritti nei campi del form, vanno scritti nello stesso ordine di INSERT INTO
$q="INSERT INTO successi(data_localeS,dataGmtSX,nomeS,cittaS,suoemailS,oggettoS,messaggioS,bandierina,ip)
       VALUES('$data_localeS','$dataGmtSX','$nomeS','$cittaS','$suoemailS','$oggettoS','$messaggioS','$bandierina','$ip')";

Re: aiuto problema richiamo db

Inviato: 18/12/2015, 7:43
da brunino
Cambia questo
$result = mysql_query($query);
Con questo
$result = mysql_query($query) or die (mysql_error());
E vedi se quando invii escono errori

Re: aiuto problema richiamo db

Inviato: 18/12/2015, 8:53
da Jmdesign
Inanzi tutti vi ringrazio per l'aiuto.. mi è apparso questo

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '('codice', 'nome','nazionalita', 'anno_di_nascita'),('qqq','ds','asd','1234')' at line 1

Re: aiuto problema richiamo db

Inviato: 18/12/2015, 9:07
da frank
Incomincia a mettere così:

Codice: Seleziona tutto

$query = "insert INTO ES1_REGISTA (nome,codice,anno,nazionalita)
VALUES('$nome','$codice','$anno','$nazionalita')";
Nel database devi avere questi campi (records) nella tabella: nome, codice, anno, nazionalita

Re: aiuto problema richiamo db

Inviato: 18/12/2015, 9:23
da Jmdesign
funzionaaa!!! grazie mille :D

Re: aiuto problema richiamo db

Inviato: 18/12/2015, 12:23
da Sir Xiradorn
Jm un consiglio per il futuro. Le funzionalità di php sono state recentemente modificate e il seti per la connessione e uso del mysql è stato deprecato quindi le istruzioni di connessione il db che hai usato più in la non funzioneranno.

Se cerchi in questa sezione ci stanno degli esempi del nuovo set di connessione al database ovvero l'oggetto chiamato PDO.

Re: aiuto problema richiamo db

Inviato: 22/12/2015, 11:48
da Jmdesign
Ti ringrazio davvero tanto...avrei un ultimo consiglio da chiedervi, potete indicarmi qualche libro in un cui potrei studiare? magari recente in modo da avere un quadro generale