Portal > Foren > PHP > PHP-Programmierung > Probleme rund ums Formular
Antwort
 
Themen-Optionen
Alt 14.04.2006, 21:45 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard Probleme rund ums Formular

Hallo,


ich habe da ein paar Probleme, bei denen ich einfach nicht mehr weiter komme. Bin noch ein ziemlicher PHP Neuling und hoffe mal, dass das möglich ist.

Es geht bei beiden Problemen um dieses Formular: link


1. Ich habe oben die 2 Auswahl-Radiobuttons und möchte, dass bei Auswahl1 ein verkürztes Formular (also z.B. ohne Adresse, Ort, PLZ, Nr.) und bei Auswahl2 das komplette Formular erscheint. Bevor man nicht etwas ausgewählt hat, sollen nur diese 2 Buttons sichtbar sein. Soll ich einfach mit "echo" pro RadioButton ein Formular ansteuern, oder geht das auch einfacher?

2. Ich habe diese Auswahlfelder für Monat/Tag. Nun möchte ich , dass die Tage (mal 30, oder 31, oder 29) an den jeweiligen Monat gebunden sind. Muss ich da jetzt für jeden Monat extra ein Array anlegen, oder kann ich das zentral regeln, indem ich für bestimmte Monate einen (oder mehrere) Tag/e weglasse?


mfg
Sacre

Geändert von Sacre (14.04.2006 um 21:48 Uhr).
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 01:22 Nach oben    #2
Erfahrener Benutzer
 
Benutzerbild von schifti
 
Registriert seit: 06.12.2004
Ort: Bayern
Beiträge: 184
Standard

Du meinst, das wenn man eins anklickt, dann dementsprechend der Rest angezeigt wird ohne neu laden?
Wenn ja, dann musst du JavaScript benutzen.
Da kann ich dir aber nicht weiter helfen!
schifti ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 09:25 Nach oben    #3
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

es würde mir reichen, wenn der rest nach neuladen der page angezeigt würde.
js kommt für mich dort leider nicht in frage, da clientseitige sprachen ausgeschaltet werden können, was bei einem (wichtigen) kontaktformular wohl nicht so toll wäre.....
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 10:35 Nach oben    #4
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.642
Standard

Du könntest das Problem mit einer Weiche umgehen, indem du überprüfst ob Javascript aktiviert ist und dann darauf zugreifst oder bei deaktiviertem JS einfach die Reloadmethode nutzt.
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 10:55 Nach oben    #5
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

hm, danke erstmal.
Aber allgemein geht es mir ja eigentlich nicht um das javascript

Wie funktioniert denn das mit der Reloadmethode ?
Gibts da schon irgend ein passendes Beispiel ?
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 11:08 Nach oben    #6
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.642
Standard

Du könntest 2 Formulare aufbauen. Das erste mit den Radiobuttons, das zweite ist das eigentliche Formular.
Wenn das erste Formular abgeschickt wurde, wertest du die Buttons aus und zeigst das 2. Formular an.
kurzer Quelltextauszug:
PHP-Code:
<?php
if(isset($_POST['button_name_erstes_formular'])) {
    if(isset(
$_POST['radiobutton_1']) {
        
// erste Formularvariante
    
} else if(isset($_POST['radiobutton_2'])) {
        
// zweite Forumlarvariante
    
}
}
?>
Passendes Tutorial:
[php] Formulare verstehen und auswerten
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 16:56 Nach oben    #7
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

ok danke........ich hätte das tutorial wohl doch genauer lesen sollen
mal sehn was ich da zusammenbekomme...

mfg
sacre
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 19:13 Nach oben    #8
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

ach,

zu meinem 2. problem, gibts da evtl. einen ansatz?
bin ich auf dem richtigen weg mit meinen arrayversuch?
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 19:17 Nach oben    #9
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.471
Standard

Das Problem habe ich nicht so ganz verstanden.
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 19:26 Nach oben    #10
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

Achso, ich glaube DA kann ich abhelfen

Also, stelle dir das ganze wie deinen Windows-Kalender vor. Jeder Monat hat verschieden viele Tage. Es ändern sich die Wochentage bei anderer Monatsauswahl.....

Ich möchte nun z.B. das komplette Jahr 2006 als Kalender anlegen (später evtl noch weitere...)

Auf Deutsch:
Wenn ich im Auswahlmenü z.B. APRIL anwähle sollen sich die Tage dementsprechend anpassen

Also:
1. Samstag
2. Sonntag
3. Montag
4. Dienstag
usw....

Wenn ich jetzt im Auswahlmenü z.B. MAI auswähle (als Terminvorschlag) sollen sich die Tage auch anpassen....

Also:
1. Montag
2. Dienstag
3. Mittwoch
4. Donnerstag
5. Freitag
usw....


bist du daraus schlau geworden ?
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.04.2006, 20:37 Nach oben    #11
Jay
Gast
 
Beiträge: n/a
Standard

Ich habe dein Problem jetzt mal verstanden aber was willst du jetzt?
So einen mit HTML Formular erstellen oder wie d.h. der User wählt in einer Select Liste den Monat aus und dann sollen der Kalender für dieses Montag erscheinen oder wie?

MfG Fat Tony
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.04.2006, 11:02 Nach oben    #12
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

Ganz genau, der User wählt den Monat aus, und dazu wird dann der entsprechende Kalender (auch in einem dropdownmenü, oder anders) dargestellt (die tage von 1-31).

gibt es da schon codesnipsel, an denen ich evtl weiterprobieren könnte ?
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.04.2006, 11:57 Nach oben    #13
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.642
Standard

Das geht nur in Javascript und davon haben wir bisher noch nicht allzuviele Tutorials. Da musst du wohl mal Google befragen.
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.04.2006, 12:01 Nach oben    #14
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

hm komisch...........es ist ja nicht gefragt, dass die tage dynamisch OHNE reload zugewiesen werden.
wenn ich einen monat auswähle, wird neu geladen, und damit die jeweiligen tage des monats abgefragt.........bloß, wie weise ich die tage dem jeweiligen monat zu..........per array ?
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.04.2006, 12:29 Nach oben    #15
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.642
Standard

schau mal hier: http://www.php.net/date
dort kannst du sicher eine möglichkeit entsinnen, ansonsten würde ich dir einfach empfehlen, JS zu nutzen oder beides zeitgleich auszusuchen und dann zu überprüfen, ob der 31. in dem monat überhaupt existent ist. allerdings ist ein array sicher nicht verkehrt und ehrlich gesagt hab ich noch nie einen kalender gebaut
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.04.2006, 20:48 Nach oben    #16
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

hm, sieht interessant aus, evtl implementiere ich das später........

ich habe im moment nur ein kleines problem mit deiner formularlösung...

code:
HTML-Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>formtest</title>
</head>

<body>

<?php
if(isset($_POST['senden'])) {
    if(isset($_POST['auswahl1']) { 
echo $msg.'A';
    } else if(isset($_POST['auswahl2'])) {
echo $msg.'B';
    }
}
?> 

<form action="formtest.php" method="post">
<label>Auswahl1</label><input name="auswahl1" type="checkbox" value="neu" /><br />
<label>Auswahl2</label><input name="auswahl2" type="checkbox" value="neu" />

<input name="senden" type="submit" value="senden"/>
</form>


</body>
</html> 
Warum wird das nicht so interpretiert, wie ich es gern hätte ?
Link: http://www.z4you.de/testcase/formtest.php


mfg
sacre
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.04.2006, 22:47 Nach oben    #17
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.642
Standard

also du hattest ne ) vergessen in Zeile 12, aber folgendes ist bei mir erfolgreich getestet (dateiname: test.php
PHP-Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>formtest</title>
</head>

<body>

<?php
if(isset($_POST['senden'])) {
    if(isset(
$_POST['auswahl1'])) { 
        echo 
$msg.'A';
    } else if(isset(
$_POST['auswahl2'])) {
        echo 
$msg.'B';
    }
}
?> 

<form action="test.php" method="post">
<label>Auswahl1</label><input name="auswahl1" type="checkbox" value="neu" /><br />
<label>Auswahl2</label><input name="auswahl2" type="checkbox" value="neu" />
<input name="senden" type="submit" value="senden"/>
</form>

</body>
</html>
Allerdings versuchs mal mit Radiobutton, denn ich geh davon aus, dass du nur eine von 2 Auswahlen haben möchtest oder?
Im Moment kannst du so wie es ist beide zeitgleich auswählen...
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.04.2006, 23:53 Nach oben    #18
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

ach bin ich bescheuert

danke für den tip, das hilft mir schon um einiges weiter....
hatte mir schon gedanken gemacht, wie ich das im php code wohl realisieren könnte (nur ein button auswählbar)

ok , jetzt baue ich mir erstmal mein formular nach deinem vorschlag zusammen. danach gibts noch ein anderes problem, doch dazu später


gnight
sacre
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.04.2006, 11:13 Nach oben    #19
Neuer Benutzer
 
Registriert seit: 11.06.2005
Beiträge: 10
Standard

wenn du select felder für die auswahl des monats bzw. jahr verwendest, kannst du den onchange handler verwenden, der aufgerufen wird, sobald ein eintrag ausgewählt wird.

die funktion, die der onchange handler aufruft, beinhaltet dann:

zusammenstellung der GET parameter (z.B. monats name und jahr)

die neuladung der seite mit den angehängten GET parametern

wenn du die seite net komplett neu laden willst, machste das einfach mit AJAX
spoensche ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.04.2006, 18:00 Nach oben    #20
Neuer Benutzer
 
Registriert seit: 14.04.2006
Beiträge: 24
Standard

danke spoensche, da werde ich mich noch einarbeiten. es ist schon mal toll, dass es überhaupt geht


aber 2 eigentlich banale probleme habe ich trotzdem noch.....

1. ich habe ein formular mit 2 Radiobuttons. Nur einer davon soll ausgewählt werden können. danach (nach dem abschicken) werden die buttons ausgewertet, und je nachdem ein anderes ereignis angezeigt.

Jetzt habe ich es hinbekommen, dass nur einer der buttons auswählbar ist, doch dafür musste ich gleiche namen vergeben. wie kann ich sie jetzt über php ansprechen ?

2. Wie erreiche ich es, dass der angeklickte radiobutton auch nach dem absenden aktiv bleibt ? Hier mein versuch:

http://www.z4you.de/testcase/formtest.php

Kurzform
HTML-Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>formtest</title>
</head>

<body>
<form action="formtest.php" method="post">
<label>Neupatient</label><input type="radio" value="<?php echo getValue('auswahl1'); ?>" name="auswahl1" /><br />
<label>Praxispatient</label><input type="radio" value="<?php echo getValue('auswahl2'); ?>" name="auswahl1" />

<input name="senden" type="submit" value="senden"/>
</form>

<?php
if(isset($_POST['senden'])) {
    if(isset($_POST['auswahl1'])) { 
    
echo $msg.'A';
    } 
    
    else if(isset($_POST['auswahl2'])) {
echo $msg.'B';
    }
}

function getValue($auswahl1)
{
    if(isset($_POST[$auswahl1]))
    {
        return $_POST[$auswahl1];
    }
    else
    {
        return '';
    }
}
?> 

</body>
</html> 
Mit dem obigen link könnt ihr mir auch gern schon eine EMail schicken, allerdings werden bis jetzt nur die felder "Vorname" bis "Telefonnummer" ausgewertet.....

mfg
sacre
Sacre ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JS-Code füllt Formular mit vorher festgelegten Werten Jann Hendrik JavaScript und AJAX 14 07.08.2007 21:17
[JS] Formular nicht mir [ENTER] abschicken Sclot JavaScript und AJAX 3 21.01.2007 09:07
fsockopen & Formulare Niedi PHP-Programmierung 12 21.07.2006 16:08
formular --> logik- / auswertungsproblem Sacre PHP-Programmierung 4 30.04.2006 20:12
Formular mit sehr vielen checkboxen Jean PHP-Programmierung 5 25.04.2006 15:28


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:00 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

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