Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Formular mit Checkboxen füllen und weiterverarbeiten

Frage Entwicklung PHP

Mitglied: gechger

gechger (Level 1) - Jetzt verbinden

07.05.2009, aktualisiert 04.08.2009, 6138 Aufrufe, 11 Kommentare

Ich möchte anderen Usern ein Formular zur Verfügung stellen, daß Daten aus einer MYSQL Datenbank ausliest, über Checkboxen aber eine Auswahl ermöglichen und eine Änderungsmöglichkeit schaffen

Hallo Forum,

wieder mal hänge ich fest und mir fehlt der richtige Tip.
Ich habe ein Auswahlliste mit Checkboxen, um gezielt Daten der einzelnen Abteilungen (Sport) ausgeben zu lassen. Es handelt sich dabei um Übungszeiten.
Das funktioniert.

Die ausgegebenen Daten enthalten wiederum ein Checkbox. Die zu ändernden Daten sollen markiert werden, woraufhin sich ein weiteres Formular öffnen soll, in dem die Änderungen eingetragen werden können. Zum Schluß sollen die geänderten DAten in die Datenbank zurück, aber soweit bin ich noch nicht.

Mein Problem ist, daß immer wenn ich einen ausgegebenen Datensatz markiere, und das Änderungsformular aufrufen will, alles verschwindet bis auf mein ursprüngliches Auswahlformular, und ich weiss nicht wieso. Unter diesem Link könt Ihr Euch den Effekt gerne anscheuen php_Link .

Dies ist mein Script:

01.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
02.
 
03.
<html> 
04.
<head> 
05.
<title>www.mtv-fichte.de</title> 
06.
        <meta http-equiv="expires" content="0"
07.
        <meta name="author" content="Christof Gersky"
08.
        <meta name="Keywords" content="Winsen Aller, Sport, Badminton, Gesundheit, Handball, Rock, Roll, Jazz Dance, Schach, Tae Kwon Do, Tischtennis, Turnen, Ger&auml;tturnen "
09.
        <style type="text/css"></style> 
10.
        </head> 
11.
 
12.
 
13.
<body> 
14.
<body bgcolor="#ffffff" text="#111111"
15.
<font face="Verdana, Arial, Tahoma, Sans Serif"
16.
 
17.
<font size="2"
18.
<font color="#291455"
19.
 
20.
<!-- Auswahlformular zur Auswahl der ABteilung--> 
21.
 <form action="zeitaktual.php" method="post" name="Formular" onSubmit="return chkFormular()"
22.
  Bitte Abteilung auswählen <br><br> 
23.
 
24.
 
25.
    <input type="radio" name="abteilung[]" value="Badminton"  > Badminton<br> 
26.
    <input type="radio" name="abteilung[]" value="Gerätturnen">  Gerätturnen<br> 
27.
    <input type="radio" name="abteilung[]" value="Gesundheitssport" > Gesundheitssport<br> 
28.
    <input type="radio" name="abteilung[]" value="Handball" > Handball<br> 
29.
    <input type="radio" name="abteilung[]" value="Jazzdance" > Jazzdance<br> 
30.
    <input type="radio" name="abteilung[]" value="Rock n Roll" > Rock 'n Roll<br> 
31.
    <input type="radio" name="abteilung[]" value="Schach" > Schach<br> 
32.
    <input type="radio" name="abteilung[]" value="Tae Kwon Do" > Tae Kwon Do<br> 
33.
    <input type="radio" name="abteilung[]" value="Tischtennis" > Tischtennis<br> 
34.
    <input type="radio" name="abteilung[]" value="Turnen" > Turnen<br> 
35.
    <input type="radio" name="abteilung[]" value="Walking" > Walking<br> 
36.
    <input type="submit" class="button" name="DataAction" value="Auswahl bestätigen"><br> 
37.
</form> 
38.
 
39.
 
40.
<?php 
41.
error_reporting(E_ALL); 
42.
ini_set('display_errors', '1'); 
43.
 
44.
//Überprüfung, ob ein Radiobutton ausgewählt worden ist 
45.
if (isset($_REQUEST['abteilung'])) { 
46.
         foreach ($_REQUEST['abteilung'] as $value) { 
47.
                 $auswahl=($value); 
48.
//Verbindungsaufbau zur Datenbank 
49.
                 $link = mysql_connect("XXXXXXX", "XXXXXX", "XXXXXX"); 
50.
                 mysql_select_db("XXXXXX",$link) or die ("die Verbindungsaufnahme ist gescheitert!"); 
51.
                 $sql=("SELECT * FROM mtv_zeiten where bereich = '$auswahl' "); 
52.
                 $abfrage = mysql_db_query('XXXXXXX',$sql); 
53.
 
54.
//Aufteilen des erhaltenen Arrays 
55.
                         while ($daten=mysql_fetch_array($abfrage)){ 
56.
                                 $id=$daten[0]-1; 
57.
                                 $tag=$daten[1]; 
58.
                                 $zeitvon=$daten[2]; 
59.
                                 $zeitbis=$daten[3]; 
60.
                                 $art=$daten[4]; 
61.
                                 $ort=$daten[5]; 
62.
                                 $abteilung=$daten[6]; 
63.
                                 $leitung=$daten[7]; 
64.
?> 
65.
<!--Ein neues Formular wird aufgebaut, in dem die selektierten Werte landen. Ebenso wird hier eine 
66.
    Auswahlmöglichkeit geschaffen, die Daten zu markieren, die geändert werden sollen--> 
67.
 
68.
<table border="1"
69.
<tr> 
70.
<td width="50%"  bgcolor="#CCCCFF"><?echo $tag; ?></td> 
71.
<form action="zeitaktual.php" method="post"
72.
<td "10%" bgcolor="#FF0000" ><input type="radio" name="auswahl<?= $id; ?>" value="0">Datensatz hier markieren zum Ändern<br>   </td> 
73.
</tr> 
74.
</table> 
75.
<table border="1" bgcolor="#CCCCFF"
76.
<tr> 
77.
<td  ><?echo $id."-".$zeitvon."-".$zeitbis."| |".$art."| |".$ort."| |".$abteilung."| |".$leitung ?></td> 
78.
</tr> 
79.
</table> 
80.
</form> 
81.
 
82.
<? 
83.
//Prüfung, ob eine Auswahl getroffen worden ist 
84.
if(isset($_POST["auswahl$id"])){ 
85.
?> 
86.
<!--Wenn eine Auswahl getroffen wurde, soll ein weiteres Formular geöffnet werden, in dem die Änderungen 
87.
    vorgenommen werden können. HIER LIEGT MEIN PROBLEM!--> 
88.
<table > 
89.
<tr align="left" valign="bottom" bgcolor="#FF0000"
90.
<td><input type="text" name="a_id"  value="<?= $id; ?>" size="2"></td> 
91.
<td><input type="text" name="a_tag"  value="<?= $tag; ?>" size="50"></td> 
92.
</tr> 
93.
</table> 
94.
 
95.
<table> 
96.
<tr align="left" valign="bottom" bgcolor="#FF0000"
97.
<td><input type="text" name="a_zeitvon"  value="<?= $zeitvon; ?>" size="6"></td> 
98.
<td><input type="text" name="a_zeitbis"  value="<?= $zeitbis; ?>" size="6"></td> 
99.
<td><input type="text" name="a_art"  value="<?= $art; ?>" size="50" ></td> 
100.
<td><input type="text" name="a_ort"  value="<?= $ort; ?>" size="25"></td> 
101.
<td><input type="text" name="a_abteilung"  value="<?= $abteilung; ?>" size="25"></td> 
102.
<td  ><input type="text" name="a_leitung"  value="<?= $leitung; ?>" size="50"></td> 
103.
</tr> 
104.
</table> 
105.
 <? 
106.
107.
108.
 
109.
?> 
110.
<table> 
111.
<form action="zeitaktual.php" method="post"
112.
<tr> 
113.
<td> 
114.
<input type="submit" value="Zum Ändern bitte klicken"><br> 
115.
</td> 
116.
</tr> 
117.
</table> 
118.
<br> 
119.
<? 
120.
 
121.
122.
//Kontrolle, wie die geänderten Daten aussehen 
123.
echo ($_POST["a_zeitvon"])."|".($_POST["a_zeitbis"])."|".($_POST["a_art"])."|".($_POST["a_ort"])."|".($_POST["a_abteilung"])."|".($_POST["a_leitung"]); 
124.
 
125.
//Hier soll dann noch der SQL-Update Befehl kommen 
126.
 
127.
128.
?> 
129.
 
130.
 
131.
 
132.
 
133.
 
134.
</font> 
135.
</body> 
136.
</html>
Wahrscheinlich wieder irgendwas simples, aber ich komme einach nicht drauf.

Jeder Tip hilft weiter.

Schöne Grüße
Christof
Mitglied: ITLocke
07.05.2009 um 17:23 Uhr
Guten Abend,

benenne deine Radio-Button-Namen um und mache für jeden eine Abfrage a la
if (isset($_REQUEST['Badminton']))
<input type="radio" name="Badminton" value="Badminton" checked = checked > Badminton<br>
else
<input type="radio" name="Badminton" value="Badminton" > Badminton<br>
damit sollte der Browser sich merken, welchen Button du anfangs ausgewählt hast

Gruß Locke
Bitte warten ..
Mitglied: gechger
07.05.2009 um 19:56 Uhr
Hi Locke,

der erste Teil des Scripts funktioniert ja. Wenn ich Badminton wähle, bekomme ich auch nur Badminton-Einträge. Das Problem liegt in den dahinter liegenden Checkboxen. Nehmen wir das Beispiel Badminton:
Aus allen Einträgen der Datenbank bekomme ich ausgegeben:
Eintrag 7, 17 und 20.
Wenn ich jetzt die ID 7 markiere und Absenden wähle, dann verschwinden meine Tabellen und ich habe nur wieder meine ursprüngliche Auswahlliste.

Bekommen wollte ich aber ein zusätzliches Formular mit einer Kopie der gewählten Einträge, die ich überschreiben kann, und bei Submit als echo ausgeben will. Diesen Teil des Scripts hatte ich schon erfolgreich getestet, bevor ich die Abteilungsselektion eingebaut habe. In dieser Konfiguration klappt es aber nicht.
Das Problem beginnt in meinem Script ab Zeile 84. Und ich sehe nicht, warum.
Um es klarer zu machen, folge meinem Link im Posting und schaus Dir mal an.

@masterG
Danke für den Link, den kannte ich aber schon. Er hilft in meinem Problem aber auch nicht.

Schöne Grüße
Christof
Bitte warten ..
Mitglied: dog
08.05.2009 um 10:40 Uhr
Ich hab deinen Code mal etwas aufgeräumt:

01.
<?php 
02.
		error_reporting(E_ALL); 
03.
		ini_set('display_errors', '1'); 
04.
?> 
05.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
06.
<html> 
07.
	<head> 
08.
		<title>www.mtv-fichte.de</title> 
09.
        <meta http-equiv="expires" content="0"
10.
        <meta name="author" content="Christof Gersky"
11.
        <meta name="Keywords" content="Winsen Aller, Sport, Badminton, Gesundheit, Handball, Rock, Roll, Jazz Dance, Schach, Tae Kwon Do, Tischtennis, Turnen, Gerätturnen "
12.
        <style type="text/css"></style> 
13.
	</head> 
14.
	<body bgcolor="#ffffff" text="#111111"
15.
		<font face="Verdana, Arial, Tahoma, Sans Serif"
16.
			<font size="2"
17.
				<font color="#291455"
18.
<?php 
19.
			if (!isset($_POST['abteilung'])) { 
20.
?> 
21.
					<!-- Auswahlformular zur Auswahl der ABteilung--> 
22.
					<form action="zeitaktual.php" method="post" name="Formular" onSubmit="return chkFormular()"
23.
						Bitte Abteilung auswählen <br><br> 
24.
						<input type="radio" name="abteilung" value="Badminton"  > Badminton<br> 
25.
						<input type="radio" name="abteilung" value="Gerätturnen">  Gerätturnen<br> 
26.
						<input type="radio" name="abteilung" value="Gesundheitssport" > Gesundheitssport<br> 
27.
						<input type="radio" name="abteilung" value="Handball" > Handball<br> 
28.
						<input type="radio" name="abteilung" value="Jazzdance" > Jazzdance<br> 
29.
						<input type="radio" name="abteilung" value="Rock n Roll" > Rock 'n Roll<br> 
30.
						<input type="radio" name="abteilung" value="Schach" > Schach<br> 
31.
						<input type="radio" name="abteilung" value="Tae Kwon Do" > Tae Kwon Do<br> 
32.
						<input type="radio" name="abteilung" value="Tischtennis" > Tischtennis<br> 
33.
						<input type="radio" name="abteilung" value="Turnen" > Turnen<br> 
34.
						<input type="radio" name="abteilung" value="Walking" > Walking<br> 
35.
						<input type="submit" class="button" name="DataAction" value="Auswahl bestätigen"><br> 
36.
<?php 
37.
			//Überprüfung, ob ein Radiobutton ausgewählt worden ist 
38.
			} else
39.
				//Verbindungsaufbau zur Datenbank 
40.
				 $link = mysql_connect("XXXXXXX", "XXXXXX", "XXXXXX"); 
41.
				 mysql_select_db("XXXXXX",$link) or die ("die Verbindungsaufnahme ist gescheitert!"); 
42.
				 $sql=sprintf("SELECT * FROM mtv_zeiten where bereich = '%s' ",$_POST['auswahl']); 
43.
				 $abfrage = mysql_db_query('XXXXXXX',$sql); 
44.
 
45.
				//Aufteilen des erhaltenen Arrays 
46.
				while ($daten = mysql_fetch_assoc($abfrage)){ 
47.
					if(!isset($_POST['auswahl'])) { 
48.
?> 
49.
						<!--Ein neues Formular wird aufgebaut, in dem die selektierten Werte landen. Ebenso wird hier eine 
50.
						    Auswahlmöglichkeit geschaffen, die Daten zu markieren, die geändert werden sollen--> 
51.
						<table border="1"
52.
							<tr> 
53.
								<td width="50%"  bgcolor="#CCCCFF"
54.
									<? echo $daten['tag']; ?> 
55.
								</td> 
56.
								<td "10%" bgcolor="#FF0000"
57.
									<input type="radio" name="auswahl" value="<?= $daten['id'] ?>"
58.
									Datensatz hier markieren zum Ändern<br>    
59.
								</td> 
60.
							</tr> 
61.
						</table> 
62.
						<table border="1" bgcolor="#CCCCFF"
63.
							<tr> 
64.
								<td> 
65.
									<?php echo $daten['id']."-".$daten['zeitvon']."-".$daten['zeitbis']."| |".$daten['art']."| |".$daten['ort']."| |".$daten['abteilung']."| |".$daten['leitung'] ?> 
66.
								</td> 
67.
							</tr> 
68.
						</table> 
69.
<?php				} elseif($_POST['auswahl'] == $daten['id']) { ?> 
70.
						<!--Wenn eine Auswahl getroffen wurde, soll ein weiteres Formular geöffnet werden, in dem die Änderungen 
71.
						    vorgenommen werden können. HIER LIEGT MEIN PROBLEM!--> 
72.
						<table > 
73.
							<tr align="left" valign="bottom" bgcolor="#FF0000"
74.
								<td><input type="text" name="a_id"  value="<?php echo $daten['id'] ?>" size="2"></td> 
75.
								<td><input type="text" name="a_tag"  value="<? echo $daten['tag']; ?>" size="50"></td> 
76.
							</tr> 
77.
						</table> 
78.
 
79.
						<table> 
80.
							<tr align="left" valign="bottom" bgcolor="#FF0000"
81.
								<td><input type="text" name="a_zeitvon"  value="<?= $daten['zeitvon'] ?>" size="6"></td> 
82.
								<td><input type="text" name="a_zeitbis"  value="<?= $daten['zeitbis']?>" size="6"></td> 
83.
								<td><input type="text" name="a_art"  value="<?= $daten['art'] ?>" size="50" ></td> 
84.
								<td><input type="text" name="a_ort"  value="<?= $daten['ort'] ?>" size="25"></td> 
85.
								<td><input type="text" name="a_abteilung"  value="<?= $daten['abteilung'] ?>" size="25"></td> 
86.
								<td><input type="text" name="a_leitung"  value="<?= $daten['leitung'] ?>" size="50"></td> 
87.
							</tr> 
88.
						</table> 
89.
						<input type="hidden" name="action" value="update_row"
90.
						<input type="hidden" name="auswahl" value="<?php echo $daten['id'] ?>"
91.
<?php 
92.
						if(@$_POST['action'] == 'update_row') { 
93.
							//Kontrolle, wie die geänderten Daten aussehen 
94.
							echo ($_POST["a_zeitvon"])."|".($_POST["a_zeitbis"])."|".($_POST["a_art"])."|".($_POST["a_ort"])."|".($_POST["a_abteilung"])."|".($_POST["a_leitung"]); 
95.
96.
97.
98.
?> 
99.
						<input type="hidden" name="abteilung" value="<?php echo $_POST['abteilung'] ?>"
100.
<?php		} ?> 
101.
						<table> 
102.
							<tr> 
103.
								<td> 
104.
									<input type="submit" value="Zum Ändern bitte klicken"><br> 
105.
								</td> 
106.
							</tr> 
107.
						</table> 
108.
					</form> 
109.
				</font> 
110.
			</font> 
111.
		</font> 
112.
	</body> 
113.
</html>
a) Keine Garantie, dass es funktioniert - ich habe es nicht getestet
b) Praxistauglich ist es immer noch nicht, weil es noch SIcherheitslücken gibt
c) Ob das dein Problem löst kann ich nicht sagen

Grüße

Max
Bitte warten ..
Mitglied: nxclass
08.05.2009 um 12:13 Uhr
mal ein ..
01.
echo 'POST: '.print_r( $_POST, true )."<br>\n"; //ggf. auch für $_GET und $_REQUEST
.. eingefügt? - dann solltest du schnell erkennen warum das Script nicht bis zu Z.84 kommt.
Bitte warten ..
Mitglied: gechger
08.05.2009 um 21:18 Uhr
Hi Max,

vielen Dank für Deine Mühe, aber leider funktioniert es nicht.
Ich habe Dein Script mal mit den Zugangsdaten zu meiner Datenbank versehen, und das Ergebnis kannst Du hier abrufen:

Dein Script

Was mich bei Deinem Ansatz wundert ist, daß Du in ersten Formular als Name abteilung verwendet hast anstatt abteilung[] . Laut meiner Internetrecherchen muß man [] verwenden, damit die ausgelesenen Daten in ein Array gespeichert werden und daraus weiter verarbeitet werden können.

Aber dennoch werde ich Deinen Ansatz mal durchdenken und damit etwas ausprobieren. Das sieht eigentlich sehr vielversprechend aus.

Vielen Dank nochmal
Schöne Grüße
Christof

PS: Kann sein, daß wegen meiner Arbeit an Deinem Script jetzt noch unvorhergesehene Dinge passieren Ich probiere halt etwas rum.....
Bitte warten ..
Mitglied: gechger
08.05.2009 um 21:46 Uhr
Hi NX,

werde ich sicher probieren.

Danke für den Hinweis.

Schöne Grüße
Christof
Bitte warten ..
Mitglied: dog
09.05.2009 um 09:49 Uhr
laut meiner Internetrecherchen muß man [] verwenden

Nein, einen Array zu übergeben ist hier falsch.
Bei einer Radiogruppe kann auch immer nur ein einziger Wert übertragen werden (nämlich der ausgewählte). Du hättest also bestenfalls einen Array mit genau einem Eintrag.

Grüße

Max
Bitte warten ..
Mitglied: gechger
11.05.2009 um 21:07 Uhr
Hallo Max,

habe jetzt mal Dein Script mit meinen Datenbankzugriffen verbunden und einige Kleinigkeiten angepasst. Trotzdem klappt es noch nicht so richtig. Mir ist da auch noch etwas unklar.
Ich bekomme zwar wie gewünscht die Information ausgegeben, welche Zeiten in den einzelnen Abteilungen hinterlegt sind. Dann geht es aber trotzdem nicht weiter zur Eingabenmaske, um die Daten ändern zu können.

01.
<!--Ein neues Formular wird aufgebaut, in dem die selektierten Werte landen. Ebenso wird hier eine 
02.
Auswahlmöglichkeit geschaffen, die Daten zu markieren, die geändert werden sollen--> 
03.
<table border="1"
04.
<tr> 
05.
<td width="50%"  bgcolor="#CCCCFF"
06.
     <? echo $daten['tag']; ?> 
07.
</td> 
08.
<td "10%" bgcolor="#FF0000"
09.
<input type="radio" name="auswahl" value="<?= $daten['id'] ?>"
10.
Datensatz hier markieren zum Ändern<br> 
11.
</td> 
12.
</tr> 
13.
</table> 
14.
<table border="1" bgcolor="#CCCCFF"
15.
<tr> 
16.
<td> 
17.
<?php echo $daten['id']."-".$daten['zeit_von']."-".$daten['zeit_bis']."| |".$daten['abteilung']."| |".$daten['ort']."| |".$daten['bereich']."| |".$daten['leiter'] ?> 
18.
</td> 
19.
</tr> 
20.
</table> 
21.
<?php 
22.
           } elseif($_POST['auswahl'] == $daten['id']) { 
23.
            ?> 
24.
<!--Wenn eine Auswahl getroffen wurde, soll ein weiteres Formular geöffnet werden, in dem die Änderungen 
25.
vorgenommen werden können. HIER LIEGT MEIN PROBLEM!--> 
26.
<table > 
27.
<tr align="left" valign="bottom" bgcolor="#FF0000"
28.
<td><input type="text" name="a_id"  value="<?=  $daten['id'] ?>" size="2"></td> 
29.
<td><input type="text" name="a_tag"  value="<?= $daten['tag']; ?>" size="50"></td> 
30.
</tr> 
31.
</table> 
32.
<table> 
33.
<tr align="left" valign="bottom" bgcolor="#FF0000"
34.
<td><input type="text" name="a_zeit_von"  value="<?= $daten['zeit_von'] ?>" size="6"></td> 
35.
<td><input type="text" name="a_zeit_bis"  value="<?= $daten['zeit_bis']?>" size="6"></td> 
36.
<td><input type="text" name="a_abteilung"  value="<?= $daten['abteilung'] ?>" size="50" ></td> 
37.
<td><input type="text" name="a_ort"  value="<?= $daten['ort'] ?>" size="25"></td> 
38.
<td><input type="text" name="a_bereich"  value="<?= $daten['bereich'] ?>" size="25"></td> 
39.
<td><input type="text" name="a_leiter"  value="<?= $daten['leiter'] ?>" size="50"></td> 
40.
</tr> 
41.
</table> 
42.
<input type="hidden" name="action" value="update_row"
43.
<input type="hidden" name="auswahl" value="<?php $daten['id'] ?>"
44.
<?php 
45.
            if($_POST['action'] == 'update_row') { 
46.
//Kontrolle, wie die geänderten Daten aussehen 
47.
              echo ($_POST["a_zeit_von"])."|".($_POST["a_zeit_bis"])."|".($_POST["a_abteilung"])."|".($_POST["a_ort"])."|".($_POST["a_bereich"])."|".($_POST["a_leiter"]); 
48.
49.
50.
51.
?> 
52.
<input type="hidden" name="abteilung" value="<?php echo $_POST['abteilung'] ?>"
53.
 
54.
<table> 
55.
<tr> 
56.
<td> 
57.
<input type="submit" value="Zum Ändern bitte klicken"><br> 
58.
</td> 
59.
</tr> 
60.
</table> 
61.
</form> 
62.
<?php 
63.
64.
?> 
65.
</font> 
66.
</font> 
67.
</font> 
68.
</body> 
69.
</html>
In Zeile 22 wird elseif($_POST['auswahl'] == $daten['id']) abgefragt.
Betrifft das die Zeile 9?
Dann gibt es aber viel später noch einmal die Definition dieses $_POST, als type hidden.
<input type="hidden" name="auswahl" value="<?php $daten['id'] ?>">

Das ist es, was ich noch nicht verstehe. Wozu dienen die "hidden" types?
Und wozu dient diese Abfrage:
if($_POST['action'] == 'update_row')

Das aktuelle Script ist wieder zur Ansicht verlinkt: Link_zum_Script

Schöne Grüße
Christof
Bitte warten ..
Mitglied: dog
11.05.2009 um 21:31 Uhr
Nein, das sollte kein Problem sein.
POST-Daten werden komplett übergeben, bevor PHP überhaupt mit der Abarbeitung des Scripts beginnt.

Dein Problem ist wohl, dass der <form>-Header im zweiten Teil fehlt

Sprich aus:

01.
<?php 
02.
			if (!isset($_POST['abteilung'])) { 
03.
?> 
04.
					<!-- Auswahlformular zur Auswahl der ABteilung--> 
05.
					<form action="zeitaktual.php" method="post" name="Formular" onSubmit="return chkFormular()">
muss

01.
					<form action="zeitaktual.php" method="post" name="Formular" onSubmit="return chkFormular()"
02.
<?php 
03.
			if (!isset($_POST['abteilung'])) { 
04.
?> 
05.
						<!-- Auswahlformular zur Auswahl der ABteilung-->
werden.

Grüße

Max
Bitte warten ..
Mitglied: gechger
12.05.2009 um 18:19 Uhr
Hi Max,

Du hast Recht , ich komme direkt einen Schritt weiter.
Jetzt habe ich in der Ausgabe zwar noch eine Fehlermeldung:

Notice: Undefined index: action in /mnt/web3/53/12/51101112/htdocs/zeitaktualadminde.php on line 95

was diese Zeile 4 betrifft:

01.
<input type="hidden" name="action" value="update_row"
02.
<input type="hidden" name="auswahl" value="<?php $daten['id'] ?>"
03.
<?php 
04.
            if($_POST['action'] == 'update_row') {
aber die Änderungsausgabe erhalte ich bereits.

Schon mal viiieelen Dank für die Hilfe

Schöne Grüße
Christof

EDIT: Fehler hat sich erledigt. Man sollte ja auch mal ein @ verwenden, wie Du es vorgeschlagen hattest
Dann werde ich jetzt mal einen Update Befehl einbauen und anschließend noch eine Passwortabfrage, damit die Abteilungen auch wirklich nur ihre eigenen Daten ändern können.
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Microsoft Office
Formular Autofill - Infopath (1)

Frage von TlBERlUS zum Thema Microsoft Office ...

Batch & Shell
gelöst Set-ADUser - Füllen des Felds "Location" funktioniert nicht (2)

Frage von Alex94G zum Thema Batch & Shell ...

Batch & Shell
gelöst Datei in Ordner mit Batchdatei suchen und weiterverarbeiten (2)

Frage von MichaelWiggen zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...

DSL, VDSL
DSL-Signal bewerten (8)

Frage von SarekHL zum Thema DSL, VDSL ...