- Home
- Categorie
- Coding e Sistemistica
- PHP
- Form e inserimento dati
-
Form e inserimento dati
Ciao a tutti,
Allora ho un piccolo problema con un form in php.
Posto il codice
[php]
echo "
<form method="post" action="".$path."nuovoutente.php" >
<br>
<img src="".$path."immagini/personaggi/".$immagine[1]."" height="120" width="80" >
<input type="radio" name="guerriero" value="guerriero">$nome[1]
<img src="".$path."immagini/personaggi/".$immagine[2]."" height="120" width="80" >
<input type="radio" name="diavolo" value="diavolo">$nome[2]
<br>
<input type="SUBMIT" nome="invia" value="invia" ></form>";
[/php]
Questo è il form, e nella pagina nuovoutente.php provo a printare i dati ricevuti
[php]
personaggio = $_POST['guerriero'];
personaggio2 = $_POST['diavolo'];
print "$personaggio e $personaggio2";
[/php]
Ma niente, non mi appare la scelta.
Ora mi chiedo.. è sbagliato il form o boh?
In pratica una volta ricevuta la scelta, devo effettuare un controllo per inserire i dati nel db..Grazie a chi saprà aiutarmi, Saluti.
-
$personaggio = $_POST['guerriero'];
$personaggio2 = $_POST['diavolo'];
print "$personaggio e $personaggio2";
-
No scusa è stato un errore di battitura.
[php]
$personaggio = $_POST['guerriero'];
print $personaggio;
[/php]
Io scelgo di default il guerriero ma niente, non mi passa i dati.
Dove sbaglio?Grazie, Saluti.
-
I radio sono scelte tra n valori. Quindi devi scrivere qualcosa del tipo:
<input type=radio name=guerriero value=primoguerriero>Primo guerriero <input type=radio name=guerriero value=secondoguerriero>Secondo guerriero <input type=radio name=guerriero value=terzoguerriero>Terzo guerriero
E lui in guerriero ti ritorna il value di quello selezionato.
-
@margheritebianche said:
I radio sono scelte tra n valori. Quindi devi scrivere qualcosa del tipo:
<input type=radio name=guerriero value=primoguerriero>Primo guerriero <input type=radio name=guerriero value=secondoguerriero>Secondo guerriero <input type=radio name=guerriero value=terzoguerriero>Terzo guerriero
E lui in guerriero ti ritorna il value di quello selezionato.
Grazie per la risposta,
ho provato ma non cambia niente.
[php]
<form method="post" action="".$path."nuovoutente.php" >
<br>
<img src="".$path."immagini/personaggi/".$immagine[1]."" height="120" width="80" >
<input type="radio" name="guerriero" value="guerriero">$nome[1]
<img src="".$path."immagini/personaggi/".$immagine[2]."" height="120" width="80" >
<input type="radio" name="guerriero" value="diavolo">$nome[2]
<br>
<input type="SUBMIT" nome="invia" value="invia" ></form>";
[/php]
Niente da fare non mi printa i dati! Come diamine posso fare?Grazie, Saluti.
-
L'esempio è accessibile sul tuo sito? Se si magari ci do' un'occhiata!
-
@margheritebianche said:
L'esempio è accessibile sul tuo sito? Se si magari ci do' un'occhiata!
No mi spiace è tutto in locale :S
Cmq quello che devo fare è una pagina con i personaggi.
C'è immagine personaggio e caratteristiche.
immagine2 personaggio 2 e caratteristiche2.Oltre al input radio che posso utilizzare? Così vediamo quale sia il problema..
Grazie, Saluti.
-
Andiamo a passi, innanzitutto in questa riga:
<form method="post" action="".$path."nuovoutente.php" >
Falla così:
<form method="post" action="".$path."nuovoutente.php" >
Poi quando visualizzi il form fai visualizza sorgente (HTML) e dimmi come trasforma questa riga stessa (così vediamo se $path è corretto!
-
@margheritebianche said:
Andiamo a passi, innanzitutto in questa riga:
<form method="post" action="".$path."nuovoutente.php" >
Falla così:
<form method="post" action="".$path."nuovoutente.php" >
Poi quando visualizzi il form fai visualizza sorgente (HTML) e dimmi come trasforma questa riga stessa (così vediamo se $path è corretto!
Allora, ho fatto come hai detto e si presenta il seguente errore
Parse error: syntax error, unexpected '<' in c:\appserv\www\nuke\gioco\controllogiocatore.php on line 36
Il sorgente html è questo
<br /> <b>Parse error</b>: syntax error, unexpected '<' in <b>c:\appserv\www\nuke\gioco\controllogiocatore.php</b> on line <b>36</b><br />
Il path funziona...
Saluti e Grazie.
-
Ho sbagliato io, rimetti come prima e dimmi com'è il sorgente!
-
@margheritebianche said:
Ho sbagliato io, rimetti come prima e dimmi com'è il sorgente!
Infatti mi sembrava una cosa alquanto strana<form method="post" action="c:/appserv/www/nuke/gioco/nuovoutente.php"> <br> <img src="c:/appserv/www/nuke/gioco/immagini/personaggi/guerriero.jpg" height="120" width="80" > <input type="radio" name="guerriero" value="guerriero">Guerriero <img src="c:/appserv/www/nuke/gioco/immagini/personaggi/diavolo.gif" height="120" width="80" > <input type="radio" name="guerriero" value="diavolo">Diavolo <br> <input type="SUBMIT" nome="invia" value="invia" > </form>
Tutto è ok :S
Grazie, Saluti.
-
A questo punto posta c:/appserv/www/nuke/gioco/nuovoutente.php
-
@margheritebianche said:
A questo punto posta c:/appserv/www/nuke/gioco/nuovoutente.php
[php]
$personaggio = $_POST['guerriero'];
print $personaggio;
$path = $_SERVER['DOCUMENT_ROOT']."/nuke/gioco/";
include("riconoscoutente.php");
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "nuke";
$db = mysql_connect($dbhost, $dbuser, $dbpass);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.php");
mysql_select_db($dbname, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.php");
$sql = ("UPDATE nuke_users SET gioco='1' WHERE utente='$username'")or die (mysql_error());;
$query = @mysql_query ($sql, $db) or die(mysql_error());
mysql_close();include($path."conneti.php");
$sql = "INSERT INTO utenti (utente, nome, forza, vita, altezza, corporatura, inteliggenza, armi, abilita, soldi) VALUES ('$username', '$nome[1]','$forza[1]','$vita[1]','$altezza[1]','$corporatura[1]','$inteligenza[1]','$armi[1]','$abilita[1]','$soldi[1]')" or die (mysql_error());;
$query = @mysql_query ($sql, $db) or die(mysql_error());
[/php]Ma non vedo niente di incorretto..
Grazie, Saluti.
-
Ho provato anch'io. Anche a me sembra tutto giusto e a me qui funziona.
Semplificando io ho due file aaa.html così:<form method="post" action="nuovoutente.php"> <input type="radio" name="guerriero" value="guerriero">Guerriero <input type="radio" name="guerriero" value="diavolo">Diavolo <input type="SUBMIT" nome="invia" value="invia" > </form>
E nuovoutente.php così:
<?php $personaggio = $_POST['guerriero']; print $personaggio; ?>
Se vuoi riprovare con questi due codici.
In nuovoutente.php hai messo <?php all'inizio?
-
Ciao e grazie per il vostro interessamento,
Allora sono identici i due form, cmq posto i due codici completi forse si capisce meglio.
[php]include("riconoscoutente.php");
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "nuke";
$db = mysql_connect($dbhost, $dbuser, $dbpass);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.php");
mysql_select_db($dbname, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.php");
$result = mysql_query("SELECT * FROM nuke_users WHERE username='$username'")or die (mysql_error());
while ($row = mysql_fetch_array($result)){
$gioco = $row['gioco'];
}
if($gioco == 1){
?>
?><script language="JavaScript">
<!--Script
var time = null
function move() {
window.location = 'index.php'
}
//-->
</script>
<body onload="timer=setTimeout('move()',1000)">
<font color="#FF0000"> Entro pochi istanti sarai nel gioco...</font>
<?PHP
}
else if($gioco == 0) {
include($path."funzioni.php");
echo " Ciao $username, questa è la procedura per registrare il tuo
personaggio. ";
echo "
<form method="post" action="".$path."nuovoutente.php">
<br>
<img src="".$path."immagini/personaggi/".$immagine[1]."" height="120" width="80" >
<input type="radio" name="guerriero" value="guerriero">$nome[1]
<img src="".$path."immagini/personaggi/".$immagine[2]."" height="120" width="80" >
<input type="radio" name="guerriero" value="diavolo">$nome[2]
<br>
<input type="SUBMIT" nome="invia" value="invia" ></form>";
}
[/php]
[php]
$personaggio = $_POST['guerriero'];
print $personaggio;
$path = $_SERVER['DOCUMENT_ROOT']."/nuke/gioco/";
include("riconoscoutente.php");
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "nuke";
$db = mysql_connect($dbhost, $dbuser, $dbpass);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.php");
mysql_select_db($dbname, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.php");
$sql = ("UPDATE nuke_users SET gioco='1' WHERE utente='$username'")or die (mysql_error());;
$query = @mysql_query ($sql, $db) or die(mysql_error());
mysql_close();if($_POST['1'] == $nome[1]){
include($path."conneti.php");
$sql = "INSERT INTO utenti (utente, nome, forza, vita, altezza, corporatura, inteliggenza, armi, abilita, soldi) VALUES ('$username', '$nome[1]','$forza[1]','$vita[1]','$altezza[1]','$corporatura[1]','$inteligenza[1]','$armi[1]','$abilita[1]','$soldi[1]')" or die (mysql_error());;
$query = @mysql_query ($sql, $db) or die(mysql_error());
}
[/php]
Non mi sembra che ci sia qualcosa di incorretto :S Eppure non si decide a stamparmi la scelta cazz :SGrazie, Saluti.
-
Ciao,
io ho provato il tuo codice togliendo ovviamente le connessioni al db.
in particolare ho prova la prima pagina (quella del form) così:
[php]
<?
echo " Ciao $username, questa è la procedura per registrare il tuo
personaggio. ";
echo "
<form method="post" action="prova2.php">
<br>
<img src="".$path."immagini/personaggi/".$immagine[1]."" height="120" width="80" >
<input type="radio" name="guerriero" value="guerriero">$nome[1]
<img src="".$path."immagini/personaggi/".$immagine[2]."" height="120" width="80" >
<input type="radio" name="guerriero" value="diavolo">$nome[2]
<br>
<input type="SUBMIT" nome="invia" value="invia" ></form>";
?>
[/php]e la seconda (quella di risposta) così:
[php]
<?
$personaggio = $_POST['guerriero'];
print $personaggio;
?>
[/php]in particolare che errori ti dà?
-
Ciao e grazie per l'interessamento,
Niente il forum in php mi sà che nn vuole andare..
Ho messo il forum fuori dal codice php e tutto funziona..Cmq è una cosa molto strana.. bahh.
Lo tengo in html và, grazie a tutti. Saluti.