Problem mit Formular

LoOi

Grünschnabel
Hallo, bin neu hier :)

habe ein Problem, und zwar folgendes:

PHP:
<form action='add.php' method='post'>
<table>
<!-- ###################################### spieler 1 / rasse1 -->
<tr>
<td><font face='Verdana' size='1' color='#ffffff'>spieler1:</font></td>
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler1' value='$spieler1'></font></td> 
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font>
<input type='radio' name='rasse1' checked value = $toss> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse1' value = $terra> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse1' value = $zerg> <img src='img/zerg.gif'alt='Zerg'>
</td>
</tr>
<!-- ###################################### spieler 2 / rasse 2 -->
<tr>
<td><font face='Verdana' size='1' color='#ffffff'>spieler2:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler2' value='$spieler2'></font></td> 
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font>
<input type='radio' name='rasse2' checked value=$toss> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse2' value=$terra> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse2' value=$zerg> <img src='img/zerg.gif'alt='Zerg'>
</td> 
</tr>
<!-- ###################################### spieler 3 / rasse 3 -->
<tr> 
<td><font face='Verdana' size='1' color='#ffffff'>spieler3:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler3' value='$spieler3'></font></td> 
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font>
<input type='radio' name='rasse3' checked value=$toss> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse3' value=$terra> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse3' value=$zerg> <img src='img/zerg.gif'alt='Zerg'>
</td>
</tr>
<!-- ###################################### spieler 4 / rasse 4 -->
<tr>
<td><font face='Verdana' size='1' color='#ffffff'>spieler4:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler4' value='$spieler4'></font></td> 
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font> 
<input type='radio' name='rasse4' checked value=$toss> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse4' value=$terra> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse4' value=$zerg> <img src='img/zerg.gif'alt='Zerg'>
</td>
</tr> 
<!-- ###################################### map -->
<tr> 
<td><font face='Verdana' size='1' color='#ffffff'>map:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='map' value='$map'></font></td> 
</tr>
 
<!-- ###################################### uploader -->
<tr> 
<td><font face='Verdana' size='1' color='#ffffff'>uploader:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='uploader' value='$uploader'></font></td> 
</tr>
<td>
<input type='hidden' name='new' value='$new'>
<input type='submit' name='new' value='Abschicken'></td> 
</form>

=> es wird nix für die rasse1 / rasse 2 / rasse3 / rasse4 in die Datenbank geschrieben, für die anderen sachen schon (vorrausgesetzt ich schreibe was hinein :) )

MFG Christoph
 
also hier is der gesamte Code:

PHP:
<html>
<body bgcolor="#000000">
<?php
require("mysql.php");
if(isset($new))
{
if(!isset($fehler2))
{
$new = "INSERT INTO 
`$replays`
(
id,
spieler1, 
spieler2, 
spieler3, 
spieler4, 
rasse1, 
rasse2, 
rasse3, 
rasse4, 
map,
uploader
) 
VALUES 
(
'$id',
'$spieler1',
'$spieler2',
'$spieler3',
'$spieler4',
'$rasse1',
'$rasse2',
'$rasse3',
'$rasse4',
'$map',
'$uploader'
) 
"; 
mysql_query($new) OR die(mysql_error());
echo "
<td>
<font face='Verdana' size='1' color='#FFFFFF'>
Ihr Eintrag war erfolgreich.
<br>
<a href='index.php'>
zurück zur Startseite
</a>
</font>
</td>
";
exit;
}
else
{
echo "Fehler";
};
};
echo"
<form action='add.php' method='post'>
<table>
<!-- ###################################### spieler 1 / rasse1 -->
<tr>
<td><font face='Verdana' size='1' color='#ffffff'>spieler1:</font></td>
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler1' value='$spieler1'></font></td> 
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font>
<input type='radio' name='rasse1' checked value = $toss> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse1' value = $terra> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse1' value = $zerg> <img src='img/zerg.gif'alt='Zerg'>
</td>
</tr>
<!-- ###################################### spieler 2 / rasse 2 -->
<tr>
<td><font face='Verdana' size='1' color='#ffffff'>spieler2:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler2' value='$spieler2'></font></td> 
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font>
<input type='radio' name='rasse2' checked value = $toss> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse2' value = $terra> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse2' value = $zerg> <img src='img/zerg.gif'alt='Zerg'>
</td> 
</tr>
<!-- ###################################### spieler 3 / rasse 3 -->
<tr> 
<td><font face='Verdana' size='1' color='#ffffff'>spieler3:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler3' value='$spieler3'></font></td> 
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font>
<input type='radio' name='rasse3' checked value=$toss> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse3' value = $terra> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse3' value = $zerg> <img src='img/zerg.gif'alt='Zerg'>
</td>
</tr>
<!-- ###################################### spieler 4 / rasse 4 -->
<tr>
<td><font face='Verdana' size='1' color='#ffffff'>spieler4:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler4' value='$spieler4'></font></td> 
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font> 
<input type='radio' name='rasse4' checked value=$toss> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse4' value = $terra> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse4' value = $zerg> <img src='img/zerg.gif'alt='Zerg'>
</td>
</tr> 
<!-- ###################################### map -->
<tr> 
<td><font face='Verdana' size='1' color='#ffffff'>map:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='map' value='$map'></font></td> 
</tr>
 
<!-- ###################################### uploader -->
<tr> 
<td><font face='Verdana' size='1' color='#ffffff'>uploader:</font></td> 
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='uploader' value='$uploader'></font></td> 
</tr>
<td>
<input type='hidden' name='new' value = '$new'>
<input type='submit' name='new' value = 'Abschicken'></td> 
</form>
</td> 
</tr> 
</table>
";
?>
</body>
</html>
 
ich verstehe nich wieso er überhaupt was added!?

Normalerweise is das doch ne Mischung aus HTML und PHP !
und das geht z.b. erstma gar nicht. weil php in html mit
<? $rasse1; ?>
PHP:
<!-- ###################################### spieler 1 / rasse1 -->
<tr>
<td><font face='Verdana' size='1' color='#ffffff'>spieler1:</font></td>
<td><font face='Verdana' size='1' color='#ffffff'><input type='text' name='spieler1' value="<? $spieler1; ?>"></font></td>
<td><font face='Verdana' size='1' color='#ffffff'>rasse:</font>
<input type='radio' name='rasse1' checked value ="<? $toss; ?>> <img src='img/toss.gif' alt='Protoss'>
<input type='radio' name='rasse1' value ="<? $terra; ?>"> <img src='img/terra.gif' alt='Terraner'>
<input type='radio' name='rasse1' value ="<? $zerg; ?>"> <img src='img/zerg.gif'alt='Zerg'>
</td>
</tr>

genauso beim query :
PHP:
$new = "INSERT INTO
`$replays`
(
id,
spieler1,
spieler2,
spieler3,
spieler4,
rasse1,
rasse2,
rasse3,
rasse4,
map,
uploader
)
VALUES
(
'".$id."',
'".$spieler1."',
'".$spieler2."',
'".$spieler3."',
'".$spieler4."',
'".$rasse1."',
'".$rasse2."',
'".$rasse3."',
'".$rasse4."',
'".$map."',
'".$uploader."'
)

Oder seh ich das Falsch!? =)

in html direkt muss immer PHP mit <? anfangen und ?> aufhören..
und in php selbst nimmt er in ' ' geschriebenes nicht. deswegen erst ein
' dann ein " dann ein . (für und) $variable . " '
 
Hast Du bei der Ausgabe im Quelltext hinter value= irgendetwas stehen (bei den radio) ?
Wenn nicht, probier es mal wie sonst auch im Formular mit value='$toss' (bspw.).
Also auch hier die einfachen Anführungszeichen drumherum.
Vorausgesetzt natürlich, dass die Variablen $toss, $terra und $zerg nicht leer sind...

@Daensch
Das mit den php-Variablen in html ist schon OK so, da ja das ganze in echo="..." von php als Variable interpretiert wird. Und php-Variablen in einer Variable, die in doppelten Anführungszeichen steht, werden vom Parser auch als solche erkannt und durch deren Inhalt ersetzt.
 
Spreche die Variablen, die du mit einem Formular mit der Methode "post" verschickst im darauffolgenden Code - in deinem Fall der SQL Query - nicht mit $variable sondern mit $_POST['variable'] an.
 
Zurück