PDA

View Full Version : [php-mysql] Mi aiutereste a creare un form?


nin
16-08-2003, 18:10
Salve a tutti, mi servirebbe un piccolo aiuto per creare il più semplice form possibile per l'inserimento dei dati in un database MySql..

Dato questo per scontato (non ho bisogno di inserire username, pass e indirizzo dell'host):


<?php

$nome_db = "database";
$tabella = "tabella";

$connessione=mysql_connect()
or die ("Non riesco a connettermi con il Server <br>");

echo "Passo 1 - Connessione con il Server stabilita<br>";

$database = mysql_select_db ($nome_db, $connessione)
or die ("Non riesco a selezionare il db $nome_db<br>");

echo "Passo 2 - Connessione con il database $nome_db stabilita<br>";

.....
.....

Vorrei inserire dei valori per i campi della tabella "uno", "due" e "tre" tramite un form in codice html.. :cool:

Penso sia facilissimo, ma essendomi appena avvicinato a questa tecnologia non so dove dirigermi.. :muro:

Spero di essere stato chiaro..


Grazie a chiunque per un eventuale aiuto!

phlebotomus
17-08-2003, 01:36
Originariamente inviato da nin
Salve a tutti, mi servirebbe un piccolo aiuto per creare il più semplice form possibile per l'inserimento dei dati in un database MySql..

$sql="INSERT INTO nome_tabella (campo1,campo2,campo3)
VALUES('".$valore1."','".$valore2."','".$valore3."')";
mysql_db_query($nome_db,$sql,$connessione);
mysql_close();

Studiandoci un po' dovresti arrivare a capire (può darsi che la sintassi non sia snellissima, ma funziona).

Ciao

nin
17-08-2003, 12:58
Grazie!
Ma questo codice lo devo inserire nella stessa pagina in cui ho il codice html del form per l'inserimento, o devo creare una pagina apposta?

Thnx comunque..sono proprio un neofita! :muro:
:cool:

phlebotomus
17-08-2003, 13:37
Originariamente inviato da nin
Ma questo codice lo devo inserire nella stessa pagina in cui ho il codice html del form per l'inserimento, o devo creare una pagina apposta?
Il codice dovrebbe andare subito dopo quello che hai scritto tu. Il codice che processa i dati del form può essere in un'altra pagina (se nel form c'è action="pagina.php") oppure nella stessa pagina che contiene il form (se nel form c'è action="" oppure action="stessa_pagina_del_form.php"). Per semplicità ti consiglio di metterlo in una pagina separata.
Nota: valore1, valore2, valore3 corrispondono esattamente agli attributi name e/o id dei campi di input del form.

Ciao

nin
17-08-2003, 13:57
Oh stupendo grazie!

Adesso inzio ad avere le cose ben + chiare!

THNX, Bye!!::)

nin
17-08-2003, 14:40
Mh...

Ho creato la pagina INDEX.PHP contenente il seguente codice:


<html>
<body>
<form method="post" action=http://localhost>
News <input type=text name=News> <br>
Citazioni <input type=text name=Citazioni> <br>
Documenti <input type=text name=Documenti> <br>
<input type="submit" value="vai">
</form>
</body>
</html>




<?php

$nome_db = "gabriele";
$tabella = "fisica";

$connessione=mysql_connect()
or die ("Non riesco a connettermi con il Server <br>");


echo "Passo 1 - Connessione con il Server stabilita<br>";


$database = mysql_select_db ($nome_db, $connessione)
or die ("Non riesco a selezionare il db $nome_db<br>");


echo "Passo 2 - Connessione con il database $nome_db stabilita<br>";



$sql="INSERT INTO fisica (news,citazioni,documenti) VALUES('".$news."','".$citazioni."','".$documenti."')";

mysql_db_query($nome_db,$sql,$connessione);

mysql_close();

?>





Quando apro la pagina ottengo però questi errori:


Notice: Undefined variable: news in F:\web\index.php on line 25

Notice: Undefined variable: citazioni in F:\web\index.php on line 25

Notice: Undefined variable: documenti in F:\web\index.php on line 25

Per caso sbaglio io qualcosa nella creazione del database??
(effettuata con phpMyadmin)

Grazie e scusate se sfrutto la vostra disponibilità...

cisc
17-08-2003, 17:17
Originariamente inviato da nin



$sql="INSERT INTO fisica (news,citazioni,documenti) VALUES('".$news."','".$citazioni."','".$documenti."')";



[/CODE]



al posto di $news, ecc usa $_POST ['news'], $_POST ['$citazioni'], $_POST ['documenti']

nin
17-08-2003, 18:32
Thnx! Provo, anche se se per ora non sembra voler inserire i dati per quanto non mi dia + errori..

Sob!

Avrete mie notizie :D

nin
18-08-2003, 11:56
Originariamente inviato da cisc
al posto di $news, ecc usa $_POST ['news'], $_POST ['$citazioni'], $_POST ['documenti']


Non mi da più quei fastidiosi "notice" ma i dati non vengono inseriti nel database..

:(

Che il caldo dia alla testa anche al php?
:sofico:

phlebotomus
18-08-2003, 22:46
Ma il server del db, l'username e la password non ci sono nel tuo codice o li hai dati per scontati? Altrimenti te gli dici il nome del db e quello della tabella, ma lui non sa neanche qual'è il server.

Ciao

nin
18-08-2003, 22:53
Non mi servono, ho installato tutto in locale e posso eseguire le varie operazioni omettendo il codice...
Almeno penso, altrimenti non capirei il senso di tutte le modifiche che ho apportato ai vari files di configurazione.. :confused:

phlebotomus
18-08-2003, 23:28
Originariamente inviato da nin
Non mi servono
Non mi risulta... (ma non è detto che non mi sbagli :D ).

Ciao

nin
18-08-2003, 23:32
Beh se può essere utile tutte le volte in cui lancio lo scritp mi viene scritto:
Passo 1 - Connessione con il Server stabilita
Passo 2 - Connessione con il database gabriele stabilita

quindi non penso che abbia problemi per quanto riguarda host, pass e user..O forse si?? :confused:

Oddio mi stanno venendo dubbi amletici!
:sofico:

phlebotomus
19-08-2003, 08:27
Provaci, cosa ti costa?
$connessione=mysql_connect()
diventa
$connessione=mysql_connect(server,username,pass)

Ciao

nin
19-08-2003, 11:57
..ci ho provato e a parte che mi accetta solo user "root" e pass vuota le cose non cambiano (penso che sia l'impostazione standard di mysql ma non vorrei aggiungere stronzate a stronzate... ;) )

Dopo tutto queste linee di codice


...

$connessione=mysql_connect()
or die ("Non riesco a connettermi con il Server <br>");


echo "Passo 1 - Connessione con il Server stabilita<br>";


$database = mysql_select_db ($nome_db, $connessione)
or die ("Non riesco a selezionare il db $nome_db<br>");


dovrebbero resituirmi l'errore prorio nel caso di mancata connessione al server e database..

Torno a dire che sono un neofita, magari do troppe cose per scontate e poi..:muro:

Aggiorno: phpMyAdmin mi lancia questo messaggio ad ogni apertura

"Il file di configurazione in uso contiene impostazioni (root con nessuna password) che corrispondono ai privilegi dell'account MySQL predefinito."

Torno a pensare che posso escludere la questione user,pass etc..

nin
20-08-2003, 00:45
Thnx a tutti...ho risolto, per ora non sentirete + parlare di me.. :sofico: