Übertragung klappt nicht ganz

Status
Für weitere Antworten geschlossen.

ho2220

Registered +
Registriert
Dez. 2008
Beiträge
45
Hallo,

ich habe mit dem Quelltext folgendes Problem: Bei der Übertragung der " Einsatzkräfte" wird immer nur die erste auswahl übermittelt. So wenn ich das mit Arrays machen würde sollte dies doch gehen oder ? Allerdings verstehe ich das noch nicht sooo ganz, vielleicht hätte jemand kurz zeit sich das anzusehen?!

HTML:
[TR]
[td]Einsatzkräfte[/td]
[/TR]

[TR]
[td]



LF 8/6
LF 16 TS
LF 8/18
SW 2000
MTF


[/td]
[/TR]



[TR]
[td]Text[/td]
[/TR]



[TR]

[/TR]




if ($_POST['passwort'] == "XXXX") {

if ($_POST['ttag'] <> "") {

$dbf = dbase_open("einsaetze.dbf",2);
$anzahl = dbase_numrecords($dbf);
$index = time();
$tjahr = $_POST['tjahr'];
$tmonat = $_POST['tmonat'];
$ttag = $_POST['ttag'];
$etext = $_POST['etext'];
$euhrzeit = $_POST['euhrzeit'];
$edauer = $_POST['edauer'];
$egebiet = $_POST['egebiet'];
$ekraefte = $_POST["ekraefte[]"];

if ($tjahr < 2000) {$tjahr = $tjahr + 2000;}
$esort = $tjahr*10000 + $tmonat*100 + $ttag;

$depp = "[B]Achtung - Falscheintrag, dieses Datum gibt es nicht![/B]
";

if ($tmonat > 12) {$etext = $depp." ".$etext;}
if ($ttag > 31) {$etext = $depp." ".$etext;}
if ($tmonat == 4) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 6) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 9) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 11) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 2) { if ($ttag > 29) {$etext = $depp." ".$etext;} }

$sj = bcmod($tjahr,4);

if ($tmonat == 2) { if($sj <> 0) { if($ttag > 28) {$etext = $depp." ".$etext;} } }

if ($ttag == "1") {$ttag = "01";}
if ($ttag == "2") {$ttag = "02";}
if ($ttag == "3") {$ttag = "03";}
if ($ttag == "4") {$ttag = "04";}
if ($ttag == "5") {$ttag = "05";}
if ($ttag == "6") {$ttag = "06";}
if ($ttag == "7") {$ttag = "07";}
if ($ttag == "8") {$ttag = "08";}
if ($ttag == "9") {$ttag = "09";}

if ($tmonat == "1") {$tmonat = "01";}
if ($tmonat == "2") {$tmonat = "02";}
if ($tmonat == "3") {$tmonat = "03";}
if ($tmonat == "4") {$tmonat = "04";}
if ($tmonat == "5") {$tmonat = "05";}
if ($tmonat == "6") {$tmonat = "06";}
if ($tmonat == "7") {$tmonat = "07";}
if ($tmonat == "8") {$tmonat = "08";}
if ($tmonat == "9") {$tmonat = "09";}

$edatum = $ttag.".".$tmonat.".".$tjahr;

$dummy = array(
$esort,
$edatum, 
$euhrzeit, 
$edauer, 
$egebiet,
$ekraefte,
$etext, 
$index);

dbase_add_record($dbf,$dummy);
dbase_close($dbf); 

echo "
[TR]
[td]Die Daten wurden erfolgreich gesendet.[/td]
[/TR]
\n";
}

}

?>





[URL='http://www.freesoft-board.to/intern/index.php']zurück[/URL]

Grüße

Holger
 
Hi,
warum schreibst du $_POST["ekraefte[]"], wenn der Name doch ekraefte ist?
$_POST['ekraefte'] wird dadurch zu einem Array. Darum musst du das auch wie ein Array behandeln. Sei es nun implode(',',$_POST['ekraefte']) oder eine foreach-Schleife.

Am besten setze einfach mal "print_r($_POST['ekraefte']); exit;" hinter "if ($_POST['passwort'] == "XXXX") {" um zu sehen, was alles übergeben wird.

Gruß
Broken Sword
 
Ich hatte mir das soo gedacht mir der klammer =) aber war wohl nix

ok ich werd das gleich mal versuchen

Danke
Holger
 
hm...

probier es doch ma mit checkboxen, und die die angehackt sind, sollen halt dann eingetragen werden?

zu deiner datumsprüfung.

schon nen ganzer haufen, unnützes script.

guck dir ma die funktion

Code:
checkdate($monat, $tag, $jahr);
an, da brauhcst du nich alles durch if abfragen auswerten. auch dort werden, nicht so wie bei dir, die schaltjahre berücksichtigt.

mfg
 
ok das hab ich gemacht. Es wird immer die erste auswahl übertragen also sprich wähle ich lf 8/6 zuerst aus das. Der Rest wird nicht übertragen

Gruß
 
w00t ^^
Hmmm, also nagel mich nicht darauf fest, aber eigentlich kann dann nur das Problem sein, dass du keine "value"-Attribute benutzt.
Bsp. asdad

Gruß
Broken Sword
 
probier es doch ma mit checkboxen, und die die angehackt sind, sollen halt dann eingetragen werden?

jap das ist auch ne ganz gute idee wie schreib ich das am besten um ?
so oder ?

HTML:
Wählen Sie die gewünschten Fahrzeuge aus



Salami

Pilze

Sardellen
??

Gruß
Holger

w00t ^^
Hmmm, also nagel mich nicht darauf fest, aber eigentlich kann dann nur das Problem sein, dass du keine "value"-Attribute benutzt.
Bsp. asdad

Gruß
Broken Sword

das heißt ? an welcher stelle soll ich das Value einsetzen ?
sorry wenn ichs net so ganz blick =))
 
Zuletzt bearbeitet von einem Moderator:
w00t ^^
[...]aber eigentlich kann dann nur das Problem sein, dass du keine "value"-Attribute benutzt.
Bsp. asdad

jip, wo er´s sagt... klar

denn das, was zwischen den steht, is ja letztendlich nur das, was dem benutzer angezeigt wird, und hat auf "gesendete daten" keinen einfluss.

edit:

na mach einfach aus
Code:
LF 8/6
LF 16 TS
LF 8/18
SW 2000
MTF

das:
Code:
LF 8/6
LF 16 TS
LF 8/18
SW 2000
MTF
 
ok quelltext hab ich abgeändert
Er überträgt aber immer "nur" die erste auswahl. Ich hab auch "print_r($_POST['ekraefte']); exit;" dahinter gesetzt wie vorher auch gehts nur so....

ich probiers mal noch mit checkboxen aus

wenn ich checkboxen nehme wird gar nichts übertragen ?!

das komische ist davor hab ich das mit einem normalen textfeld gemacht das ging einwandfrei.

Nun wollte ich das aber vereinfachen das man nur feste auswahlen hat und sich nicht vertippen kann oder so !

Ich hab echt kein schimmer mehr was ich noch machen kann !!

Danke für die Antworten !
 
Zuletzt bearbeitet von einem Moderator:
Bitte beachte unsere Boardregeln, die Doppelposts und Vollzitate verbieten!
----
@checkboxes:
Du musst natürlich auch den Array-Trick anwenden ;)
Bsp.
Code:
 Salami

@selectbox:
Poste doch bitte mal den Code, denn das muss einfach funktionieren. Viele auch ich habe das schon hundert mal gehabt.
comment: Die großen Browser haben als value, wenn das Attribut fehlt, den Wert, der zwischen den option Parametern steht. (Hab das gerade ausprobiert) Darum sollte das eigentlich auch funktionieren.

Gruß
Broken Sword
 
@checkboxes:
Du musst natürlich auch den Array-Trick anwenden ;)
Bsp.
Code:
 Salami
meinst du kannst mir den text mit den checkboxen schnell umschreiben das wäre echt cool =)!! weil wenn ich ein fehler reintipp und es geht net stinkt das !!
wenn du den quelltext nochmal brauchst schreib einfach fix

danke schonmal

Holger

ach ja bevor ich das vergesse ich hatte den " array trick" schonmal angewand die ausgabe war dann "array"...

und sorry für die vollzitate =( kommt nicht wieder vor!

so siehts jetzt aus:

HTML:
[TR]
[td]Einsatzkräfte[/td]
[/TR]

[TR]
[td]



LF 8/6

LF 16 TS

LF 8/18

SW 2000

MTF




[/td]
[/TR]

so aber wenn ers überträgt kommt als ausgabe array

p.s ich hoff ich hab diesmal nix falsch gemacht beim editieren
 
Zuletzt bearbeitet von einem Moderator:
so aber wenn ers überträgt kommt als ausgabe array

das sieht doch schon gut aus... is klar, das da nen array zurückkommt, bzw übertragen wird. den musst du halt noch "auslesen"

Code:
foreach ($array as $value) {
echo "Wert: $value
\n";
}

wenn du alles davon als ein string haben willst, hängst das halt anstatt dem echo alles aneinander. nach dem schema, wie du deine $etext bzw $depp fehlermeldung zusammengesetzt hast...

edit: hab dir hier ma aufgemalt, wie ich das meine...
link gelöscht, da erledigt



mfg
 
Zuletzt bearbeitet von einem Moderator:
Also ich wollte mich nochmal Bedanken für alle die dabei geholfen haben das Problem zu lösen...

Zum schluss hat mruniverse das Problem gelöst !!!!
Danke nochmal!

Eingefügt wurde folgendes:

Code:
foreach($_POST['ekraefte'] as $value)
{
$ausgabe .= $value.", ";
}
$ekraefte = substr ( $ausgabe, 0, -2 );

#$ekraefte = $_POST["ekraefte[]"];
 
naja...dafür wurde auch eine zeile rausgenommen ;)
und die letzte zeile mit dem # davor is ja eh nur als kommentar...würde ich an deiner stelle auch rausnehmen... weil, ich glaub das steht sonst so im quelltext drin... kein plan, inwieweit das manch einer ausnutzt... :P

ps: änder doch noch den präfix (falls das hier nötig und möglich is) das das thema feddisch is...

mfg und noch schön tach...
 
ok habs so gemacht wie du gesagt hast funktionier prima !
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben Unten