Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 5%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 392 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

Airis

Grünschnabel

Dabei seit: 15.11.2004

Beiträge: 2

 

1 Zum Seitenanfang

Montag, 15. November 2004, 20:19

Radion-Button auswerten

Hallo PHP-Gemeinde,

ich möchte die Daten eines Formulares in eine MySQL-Datenbank schreiben. Es funzt auch soweit, bis auf die Radio-Buttons. Irgend etwas ist noch falsch aber was?
Das ist die verkürzte Version meines Scripts:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
if (isset($action) && ($action == "insert") ) {

$man= $_POST["SEX"];
$woman= $_POST["SEX"];

$dbhost = "localhost";
$dbname = "abc";
$dbpass = "xxx";
$dbuser = "xyz";

mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname);

$sql = "INSERT INTO address (SEX)
         VALUES ('" . $_POST['SEX'] . "')";





$sql = "insert into address ( SEX)
        values ( '$man', '$woman')";
mysql_query($sql) or die("DB-Abfrage <b>$sql</b> ist fehlgeschlagen");
echo '<p>OK, Daten in die Datenbank geschrieben.</p>';
}
else {
/*** Ansonsten Anzeige des Formulares ***/
?>

<form action="<?php echo $PHP_SELF ?>" method="post">
<input type="hidden" name="action" value="insert">
<table border=0 align=center cellspacing=1 cellpadding=0 class=bmborder width="700">

<tr><td class=bm2><br>
<table border=0 width=90% class=bmborder align=center border="0" cellpadding="1" cellspacing="1">

<tr>
<td class=bm2 align=left><font face="Arial" size="4" color="#000000">GESCHLECHT:</font></td>
</tr>
<tr>
<td class=bm2 align=center><INPUT TYPE="radio" NAME="GESCHLECHT" VALUE="<?php echo $m ?>">männlich</td>
</tr>
<tr>
<td class=bm2 align=center><INPUT TYPE="radio" NAME="GESCHLECHT" VALUE="<?php echo $w ?>">weiblich</td>
</tr>
<tr>
<td class=bm2 align=center><input type="submit"  value="Eintragen" class="bm5"></td>
</tr>

</form>
</table>
</td>
</tr>
</table>


<?php
}
?>


Die Datenbank "Mitglieder", die Tabelle "address" und der Texteintrag "Mitglieder" sind vorhanden.

Als Meldung kommt:

Zitat


OK, Daten in die Datenbank geschrieben.


Aber es erfolgt kein Eintrag.

Vieleicht kann mal jemand drüber schauen und mir einen Tipp geben.

Airis


NACHTRAG

der Grünschnabel war zu schnell, hier ist mein geändertes Script, sorry:

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php 
if (isset($action) && ($action == "insert") ) { 

$man$_POST["SEX"]; 
$woman$_POST["SEX"]; 

$dbhost "localhost"$dbname "abc"$dbpass "xxx"$dbuser "xyz"mysql_connect($dbhost,$dbuser,$dbpass); 
mysql_select_db($dbname); 

$sql "INSERT INTO address (SEX) 
         VALUES ('" $_POST['SEX'] . "')"mysql_query($sql) or die("DB-Abfrage <b>$sql</b> ist fehlgeschlagen"); 
echo '<p>OK, Daten in die Datenbank geschrieben.</p>'; 
} 
else { 
/*** Ansonsten Anzeige des Formulares ***/ 
?> 

<form action="<?php echo $PHP_SELF ?>" method="post"> 
<input type="hidden" name="action" value="insert"> 
<table border=0 align=center cellspacing=1 cellpadding=0 class=bmborder width="700"> 

<tr><td class=bm2><br> 
<table border=0 width=90% class=bmborder align=center border="0" cellpadding="1" cellspacing="1"> 

<tr> 
<td class=bm2 align=left><font face="Arial" size="4" color="#000000">GESCHLECHT:</font></td> 
</tr> 
<tr> 
<td class=bm2 align=center><INPUT TYPE="radio" NAME="SEX" VALUE="<?php echo $man ?>">männlich</td> 
</tr> 
<tr> 
<td class=bm2 align=center><INPUT TYPE="radio" NAME="SEX" VALUE="<?php echo $woman ?>">weiblich</td> 
</tr> 
<tr> 
<td class=bm2 align=center><input type="submit"  value="Eintragen" class="bm5"></td> 
</tr> 

</form> 
</table> 
</td> 
</tr> 
</table> 


<?php 
?>


Bitte keine Doppelpost. Bitte EDIT-Funktion benutzen. Danke! mfg Gimli

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Gimli« (15. November 2004, 21:00)

 

Gimli

Kaiser

Dabei seit: 12.02.2003

Beiträge: 1 375

 

2 Zum Seitenanfang

Montag, 15. November 2004, 20:55

Hab mir dein Scrip nicht angesehn ^^

Aber mit

PHP-Quelltext

1
print_r ($_POST);


kannst du dir ansehen, wie dei Radiobuttons übermittel werden.

mfg Gimli

PS: kein Doppelposts, bitte!

PPS: Ansonsten auch mal $_SERVER ansehen, da steht auch noch ne Menge drin ^^

EDIT:
Habe mir dein Script mal angesehen:

PHP-Quelltext

1
<td class=bm2 align=center><INPUT TYPE="radio" NAME="SEX" VALUE="<?php echo $man ?>">männlich</td>

Was denkst du dass da als Value übermittelt wird?
NIX!
Warum? Weil $man und $woman leer sind wenn das Forum angezeigt wird. Dh es wird sehr wohl übertragen, nur ist $POST['SEX'] leer.

Ersetz das durch

Quellcode

1
<td class=bm2 align=center><INPUT TYPE="radio" NAME="SEX" VALUE="man">männlich</td>

(bzw woman)

mfg Gimli
"Linux is evolution, not intelligent design." - Linus Torvalds

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Gimli« (15. November 2004, 20:59)

 

Airis

Grünschnabel

Dabei seit: 15.11.2004

Beiträge: 2

 

3 Zum Seitenanfang

Dienstag, 16. November 2004, 00:43

Hi Gimli,

besten Dank für Deine Hilfe. Es funzt jetzt. Die Lösung ist zwar nicht ganz sauber, aber der Zweck heiligt die Mittel.

Nochmals vielen Dank und viele Grüsse aus Frankreich

Airis