Radiobutton wert lässt sich nicht übermitteln!???
Phil
- programmiertechnik
ich bin grad am proggen eines formulares es funkt bis jetzt auch alles, aber,... es geht um folgenes nach eingabe in das formular hol ich mir die werte mittels ajax heraus, anschließend schickt ich die value von meinem radiobutton zum php file, wo ich überprüfe ob die eingaben eben richtig sind oder nicht! doch meine radiobuttons sind immer undefined und ich hab kein plan wieso...
hier meine zwei radio buttons:
<input type="radio" name="anrede" value="Frau"> Frau<br>
<input type="radio" name="anrede" value="Mann"> Mann<br>
------
ajaxdata['anrede'] = form.anrede.value;
das is mal der code mit dem ich mir den inhalt mit js hole "anrede" is der name von radiobutton und diese value wird dann an an die auswertung.php gesendet und dort passiert nur das
if($_POST['anrede'] == ""){
$out.="Um fortfahren zu können bitte die Geschlaecht angeben!<br>";
}
und des geht nicht weil eben kein er keinen wert in value sieht
und ich bin verzweifelt weil mit den ganzen textfeldern gehts auch und den checkboxen aber radio button gehen eben nicht!
habt ihr ne lösung...?
vielen vielen dank im vorraus!! philipp
zu vervollständigung der code aus meinem formular:
<html>
<head>
<title>PHP-HaXx-Formular</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
function ausblenden(){
$("#navilist").hide("slow");
}
function einblenden(){
$("#navilist").show("slow");
}
</script>
<script type="text/javascript">
function js_submit(form) {
ajaxdata = new Object();
ajaxdata['vorname'] = form.vorname.value;
ajaxdata['nachname'] = form.nachname.value;
ajaxdata['telefon'] = form.telefon.value;
ajaxdata['email'] = form.email.value;
ajaxdata['anrede'] = form.anrede.value;//Geht nicht!! kein Wert vorhanden!!
ajaxdata['agb'] = form.agb.checked;
ajaxurl='auswertungForm.php';
$.post(ajaxurl, ajaxdata, afterpost);//1.gibt man die URL an die man schickt, 2. Die zu versendeten daten, 3. irgendetwas dass die daten übernhemen kann daten werden wieder aufgefangen
}
function afterpost(msg) {
if(msg == 0){
document.location = "action.php";
}else{
$("#status").html(msg);
}
}
</script>
<link rel="stylesheet" href="style.css" type="text/css" media="screen" />
</head>
<body>
<div id=overall> <img src="img/main Kopie.jpg"></div>
<div id=navipic><img src="img/links Kopie.jpg"></div>
<div id="formular"><strong>Kontakt-Formular<p></strong>
<form name="form1" action="javascript:void(0)" onsubmit="return js_submit(this);">
<input type="text" name="vorname" /> Vorname<br>
<input type="text" name="nachname" /> Nachname<br>
<input type="text" name="telefon" /> Telefonnummer<br>
<input type="text" name="email" /> E-Mail Adresse <br>
<input type="radio" name="anrede" value="Frau"> Frau<br>
<input type="radio" name="anrede" value="Mann"> Mann<br>
<input type="checkbox" name="agb" value="on"/> Hiermit akzeptiere ich die AGB's <br>
<input type="submit" value="Submit" />
</form>
</div>
<div id=status></div>
</body>
</html>
......und hier meine regular expression überprüfung:
<?php
include_once("inc/functions.php");
include("dd.php");
foreach($_POST as $i=>$v){
$_POST[$i] = utf8_decode($v);
}
$out = "";
if($_POST['vorname'] == ""){
$out .= "<li>Vorname ausfüllen!</li>";
}
if($_POST['nachname'] == ""){
$out .= "<li>Nachname ausfüllen!</li>";
}
if($_POST['telefon']== ""){
$out .="<li>Telefon Nummer eintragen!</li>";
}
if($_POST['email']== ""){
$out .="<li>Email Adresse eingeben!</li>";
}
if($_POST['anrede'] == ""){
$out.="Um fortfahren zu können bitte die Geschlaecht angeben!<br>";
}
if($_POST['agb'] != "true"){
$out .="<li>Um fortfahren zu können bitte die AGB akzeptieren!</li>";
}
if(!preg_match("/[1]*$/", $_POST["vorname"])){
$out .= "<li>Vorname darf nur aus Buchstaben bestehen!</li>";
}
if(!preg_match("/[2]*$/", $_POST["nachname"])){
$out .= "<li>Nachname darf nur aus Buchstaben bestehen!</li>";
}
if(!preg_match("/[3]*$/", $_POST["telefon"])){
$out .= "<li>Telefonnummer darf nur aus Zahlen bestehen!</li>";
}
if(!preg_match("/[4]+@[A-Za-z0-9.-]+.[A-Za-z]{2,4}$/", $_POST["email"])){
$out .= "<li>Email Adresse bitte neu eingeben!</li><br>";
}
if($out == ""){//geht nnur rein wenn kein fehler im formular ist
$admin = new admin();
echo "Die Werte wurden soeben in die Datenbank eingetragen! <a href='action.php?action=alles_ausgeben'> Hier</a> klicken um die DB zu sehen<br>";
$fertigData['vorname']=$_POST['vorname'];
$fertigData['nachname']=$_POST['nachname'];
$fertigData['telefon']=$_POST['telefon'];
$fertigData['email']=$_POST['email'];
$fertigData['anrede']=$_POST['anrede'];
dd($_POST['anrede']);
$out=$admin->writeData($fertigData);//Falls fehlermeldung --> Rückgabe von admin->writeData nach out, d.h. wenn nach der pos prüfung der reg. epr noch Fehler auftreten bsp. DB verbdingung im orsch, dann php-fehler
}
echo utf8_encode($out);
?>
Hi,
guck mal unter http://php-faq.de/q/q-formular-checkbox.html.
Ich glaube nämlich, dass deine Checkbox agb nur deshalb funktioniert, weil es die Einzigste in deinem Formular ist.
Ansonsten müssen das immer Arrays sein.
Gruß Gunther
hallo Gunther,
weil es die Einzigste...
"einzig" ist derart einzig, daß es dafür gar keine Steigerungsform der Art "einzigste" gibt. Wenn etwas "einzig" ist, ist es bereits ein Superlativ. Den kann man nicht mehr steigern. Oder man muß schlüssig erklären, daß unsere gesamte Denkweise in dreidimensionalen Räumen befangen ist, wir uns aber gefälligst an xdimensionale Räume auch im Sprachlichen zu gewöhnen hätten.
Grüße aus Berlin
Christoph S.
Hello,
"einzig" ist derart einzig, daß es dafür gar keine Steigerungsform der Art "einzigste" gibt. Wenn etwas "einzig" ist, ist es bereits ein Superlativ. Den kann man nicht mehr steigern. Oder man muß schlüssig erklären, daß unsere gesamte Denkweise in dreidimensionalen Räumen befangen ist, wir uns aber gefälligst an xdimensionale Räume auch im Sprachlichen zu gewöhnen hätten.
Kommt immer auf den Kontext an, ob die Sprachvariante als "richtig" oder "falsch" empfunden wird.
Wenn in Deinem Zeunis nämlich steht: "...hat er zu unserer vollen Zufriedenheit erledigt...", dann ist das ganz schön schlecht und deshalb für eine gute Bewertung "falsch".
Da sollte dann schon stehen "...hat er stets zu unserer vollsten Zufriedenheit erledigt...", auch wenn es voller als voll nicht gibt. Man sagt ja schließlich auch "...übervoll mit Gefühlen...", wenn jemand sich so richtig schön verliebt hat. Demnach gibt es eben doch voller als voll. Es läuft eben schon über ;-))
Liebe Grüße
Tom
Guten Morgen Tom!
Nur, weil Menschen meinen, unsere schöne Sprache permanent verbiegen zu müssen, wird's nicht richtiger.
Eine Steigerung von "voll" ist durchaus möglich (wenn auch nur selten sinnvoll), eine Steigerung von "einzig" ist einfach nur sinnlos.
File Griese,
Stonie
Nur, weil Menschen meinen, unsere schöne Sprache permanent verbiegen zu müssen, wird's nicht richtiger.
Ähm, richtig - richtiger - am richtigsten?
Siech*bg*fred
Hallo Siechfred,
Nur, weil Menschen meinen, unsere schöne Sprache permanent verbiegen zu müssen, wird's nicht richtiger.
Ähm, richtig - richtiger - am richtigsten?
nur weil etwas richtiger ist, muss es noch lange nicht richtig oder sogar sehr richtig (den Elativ gibt's ja auch noch) sein :-)
Freundliche Grüße
Vinzenz
hallo Tom,
Wenn in Deinem Zeunis nämlich steht: "...hat er zu unserer vollen Zufriedenheit erledigt...", dann ist das ganz schön schlecht und deshalb für eine gute Bewertung "falsch".
Ja, diese Raffinessen in Beurteilungen sind mir bekannt.
Da sollte dann schon stehen "...hat er stets zu unserer vollsten Zufriedenheit erledigt..."
Eine solche "Beurteilung" hat aber ein ganz anderes "Zielpublikum".
Man sagt ja schließlich auch "...übervoll mit Gefühlen..."
Das trifft auf den Frühling zu und ist saisonbedingt (das heißt, das legt sich im Lauf des Jahres) ;-)
wenn jemand sich so richtig schön verliebt hat
Ich erkläre hiermit feierlich, daß ich mich öffentlich und in diesem Forum _ausschließlich_ in Stonie verlieben könnte. Im Moment macht mir allerdings das Schneetreiben über der Mitte Berlins einen Strich durch jede derartige Rechnung. Man kann sich bei diesem Wetter nicht verlieben, man kann bloß noch tapfer in Erwartung des Frühlingsanfangs vor sich hin bibbern.
Es läuft eben schon über ;-)
Ups. Stimmt. Ich habe grade nicht aufgepaßt und mein Weinglas mit meinem besten Holunderwein immer weiter gefüllt, obwohl es schon längst vollstens war ...
;-)
Grüße aus Berlin
Christoph S.
Hello,
wenn jemand sich so richtig schön verliebt hat
Ich erkläre hiermit feierlich, [...]
*uiuiui*
Ob das gut gehen würde?
Aber solltet Ihr das doch mal wagen, dann komme ich höchstpersönlich zum Blumenstreuen.
Liebe Grüße
Tom
Hallo Christoph,
weil es die Einzigste...
"einzig" ist derart einzig, daß es dafür gar keine Steigerungsform der Art "einzigste" gibt. Wenn etwas "einzig" ist, ist es bereits ein Superlativ. Den kann man nicht mehr steigern.
da antworte ich doch mit http://www.korrekturen.de/forum/index.cgi/read/11367 drauf. ;-)
Gruß Gunther
Hi,
guck mal unter http://php-faq.de/q/q-formular-checkbox.html
Gruß Gunther
danke der erste sinnvolle post ;) lg philipp
hallo Phil,
ich bin grad am proggen eines formulares es funkt bis jetzt auch alles, aber
Ja, was meinst du denn mit "proggen"? Das klingt irgendwie nach Pizza und ähnlichem (im Russischen gibt es zum Beispiel Piroggen). Aber wieso eine Pizza auch noch über eine Funktechnologie verfügen soll, verstehe ich nicht - das knirscht doch zu sehr zwischen den Zähnen.
hier meine zwei radio buttons:
<input type="radio" name="anrede" value="Frau"> Frau<br>
<input type="radio" name="anrede" value="Mann"> Mann<br>
Nett. Das kann ich auch, uff.
ajaxdata['anrede'] = form.anrede.value;
Aber was ist das denn? Ist das jetzt sowas, was "funken" soll?
if($_POST['anrede'] == ""){
$out.="Um fortfahren zu können bitte die Geschlaecht angeben!<br>";
Achso. Wenn es keine Anrede gibt, soll man "Geschlaecht" angeben. Ich vermute, "Geschlaecht" hat irgendwas mit dem Schlachten zu tun. Aber wie soll sich jemand, der gerade geschlachtet wurde, in dein Formular eintragen können?
und des geht nicht weil eben kein er keinen wert in value sieht
Naja, "er" ist halt undefined. Kein "er" kann keinen Wert in value sehen. Das ist doppelte Verneinung. Alles klar. Du müßtest jetzt noch abfragen, was "sie" sehen soll, und wie "sie" reagieren sollte. Obwohl natürlich jeder jeden Wert in value sehen kann, den eben kein er sonst sehen könnte, unabhängig davon, ob er sich grade als sie oder es maskiert. Interessant. Allerdings: woher weißt du, ob "er" oder jemand anderes sich für deinen "value" interessiert?
und ich bin verzweifelt weil mit den ganzen textfeldern gehts auch und den checkboxen aber radio button gehen eben nicht!
?
Radioboxen "gehen" sowieso nicht, sondern sie _stehen_ irgendwo auf der Seite (ist eine alte schlechte Angewohnheit, die ihnen bisher noch niemand abgewöhnen konnte) - günstigenfalls stehen sie dort, wo du sie auch erblicken möchtest. Was wäre denn das, wenn sie irgendwo herum"gehen" wollten, tstststs ...
habt ihr ne lösung...?
Wofür?
vielen vielen dank im vorraus!
Du befindest dich leider mit "vorraus" an einem undefined Ort.
Grüße aus Berlin
Christoph S.
Wenn du bei deinen eigenen Fragen nur halb so kritisch wärest, doch leider sind deine Fragen zwar stilistisch besser, aber vom Informationsgehalt oft nicht einen deut besser.
Struppi.
Ja, was meinst du denn mit "proggen"?
http://de.wiktionary.org/wiki/proggen
Das klingt irgendwie nach Pizza und ähnlichem (im Russischen gibt es zum Beispiel Piroggen).
Liest du auch, was du da verlinkst?? Piroggen haben mit Pizza soviel zu tun wie Äpfel mit Birnen.
Nett. Das kann ich auch, uff.
http://de.wiktionary.org/wiki/Angeber
Aber was ist das denn? Ist das jetzt sowas, was "funken" soll?
Stellst du dich nur so dumm oder bist du es wirklic??
Achso. Wenn es keine Anrede gibt, soll man "Geschlaecht" angeben. Ich vermute, "Geschlaecht" hat irgendwas mit dem Schlachten zu tun. Aber wie soll sich jemand, der gerade geschlachtet wurde, in dein Formular eintragen können?
Mannomann, du bist in etwa so komisch wie Fips Asmussen.
Naja, "er" ist halt undefined.
Oha, man kann nicht nur Russisch, sondern auch denglishc, Respekt!
?
Du kennst die Grundregel der deutschjen Satzbildung? Aber extra für dich nochmal zum Ausschneiden uind an die Tatstatur kleben:
-----------------------
Subjekt Prädikat Objekt
-----------------------
Radioboxen "gehen" sowieso nicht, sondern sie _stehen_ irgendwo auf der Seite
Da steht nix, sie werden angezeigt.
habt ihr ne lösung...?
Wofür?
Vielleicht für deinen ausgeprägten Hnag zur Selbstdarstellung.
vielen vielen dank im vorraus!
Du befindest dich leider mit "vorraus" an einem undefined Ort.
Und du solltest besser nicht nachts posten.
JJ
hallo Jaroslav,
Liest du auch, was du da verlinkst?
Selbstverständlich.
Piroggen haben mit Pizza soviel zu tun wie Äpfel mit Birnen.
Richtig - aber es klingt halt so ähnlich ;-)
Stellst du dich nur so dumm oder bist du es wirklic?
"wirklic" bin ich vermutlic_h_ gar nicht so dumm, wie ich mich stellen kann. Aber wenn es dich beruhigt: bisweilen stelle ich mich etwas dumm, ja.
Mannomann, du bist in etwa so komisch wie Fips Asmussen.
Ups - wer ist denn das jetzt?
Naja, "er" ist halt undefined.
Oha, man kann nicht nur Russisch, sondern auch denglishc, Respekt!
Da gäbe es noch mehr - ich "kann" auch die alten Sprachen (ist gelegentlich im Forumsarchiv nachlsebar) und ich "kann" auch ganz gut Ungarisch und verstehe sogar ein paar Brocken Kisuaheli.
du solltest besser nicht nachts posten.
Och komm ... das ist nunmal die Zeit, in der ich über besonders gesteigerte geistige Kräfte verfüge. Vor allem, wenn ich ausreichend Holunderwein getrunken habe ;-)
Grüße aus Berlin
Christoph S.
Hallo Christoph S.
sei mir nicht bös, doch ich bin mir sicher um 2 in der früh nach einem kanppen tag nichts schlafen schreibst du auch nicht besser!
noch dazu was soll der mist mit deinen comments? wenn ich so aussehe wie du, -->bild auf deiner uralt "website" dann würd ich besser nicht so den könner und angeber raushängenlassen, seien wir doch mal ganz ehrlich das passt nicht zu dir ;-)
hallo Phil,
sei mir nicht bös
Achwo.
doch ich bin mir sicher um 2 in der früh nach einem kanppen tag nichts schlafen schreibst du auch nicht besser!
Da solltest du dir nicht gar so sicher sein.
noch dazu was soll der mist mit deinen comments?
Dieser "Mist" soll eigentlich ein bißchen zum Nachdenken anregen, was alles passieren kann, wenn man sich derart mißverständlich ausdrückt, wie du es getan hast. Es geht dabei gar nicht um dich persönlich.
wenn ich so aussehe wie du, -->bild auf deiner uralt "website" dann würd ich besser nicht so den könner und angeber raushängenlassen, seien wir doch mal ganz ehrlich das passt nicht zu dir ;-)
Das ist nun ein Diskussionsteil, der _nicht_ hierher gehört. Irgendwann wirst du vielleicht so ähnlich aussehen - und wirst dich ärgern, wenn du dann keine Haare mehr auf dem Kopf hast (ich habe sie ja noch alle). Aber kann man denn wirklich vom "Aussehen" irgendeines Typen Rückschlüsse darauf ziehen, was er vielleicht vom "Web" versteht?
Es tut mir wirklich leid, wenn ich nicht ganz so aussehe, wie du es vielleicht erwartet hast ...
Grüße aus Berlin
Christoph S.
ich bin grad am proggen eines formulares es funkt bis jetzt auch alles, aber
Ja, was meinst du denn mit "proggen"?
Na, sei man nicht so hart. Immerhin hat er den fraglichen Code mitgeliefert, sowas ist bei Leuten, die von funzenden Piroggen schreiben und Satzzeichen mit einem Salzstreuer verteilen, erfahrungsgemäß nicht üblich … ;->
Hallo Philipp,
if(!preg_match("/[1]*$/", $_POST["vorname"])){
$out .= "<li>Vorname darf nur aus Buchstaben bestehen!</li>";
Das entspricht nicht der Realität. Außerdem sind äöüß und ähnliche auch Buchstaben. Oder etwa nicht? Bindestriche, hab' ich mir sagen lassen, kommen in Vornamen auch vor.
if(!preg_match("/[2]*$/", $_POST["nachname"])){
$out .= "<li>Nachname darf nur aus Buchstaben bestehen!</li>";
Das entspricht nicht der Realität. Da kommen sogar noch Apostrophen drin vor. Hmm, O'Brien hat schon lange nichts mehr gepostet.
if(!preg_match("/[3]*$/", $_POST["telefon"])){
$out .= "<li>Telefonnummer darf nur aus Zahlen bestehen!</li>";
Das ist Unsinn. Es gibt auch Buchstaben, das Plus-Zeichen, das Minuszeichen und das Leerzeichen. Willst Du jemanden zwingen, eventuell 15 Ziffern hintereinander einzugeben. Keine gute Idee.
if(!preg_match("/[4]+@[A-Za-z0-9.-]+.[A-Za-z]{2,4}$/", $_POST["email"])){
Du schließt jede Menge gültiger E-Mail-Adressen aus. Lies bitte im Selfforumssieb den (bisher einzigen) Artikel Validierung von E-Mail-Adressen.
Es wundert mich allerdings nicht, dass nach Deinen strengen Anforderungen an Vor-, Nachnamen und Telefonnummern Dein Beitrag unter einem eklatanten Mangel an Satzzeichen leidet, der die Verständlichkeit doch arg einschränkt. In diesem Forum sind diese Zeichen nicht verboten, nutze sie!
Freundliche Grüße
Vinzenz