Willkommen in der Webstatt Zum Webstatt Blog und Stories
Christian am 22.07.06 14:06

Ich erstelle eine Auswalliste mit Zahlen von 1-20 folgendermaßen:

<select name="seiten">
<?php
for($i=1; $i<20; $i++){
echo "<option>$i</option>";
}
?>
</select>

Wie schaffe ich es, dass nachdem das formular abgeschickt wurde, die ausgewählte zahlt weiterhin ausgewählt bleibt?

ich hoffe ihr versteht was ich meine :P
[COLOR=green]solved[/COLOR]


ach ja das auch noch:
wie schicke ich die formulardaten an eine alternative adresse um sie dort weiterzuverarbeiten?
[COLOR=green]solved[/COLOR]



und dann noch ne andere kleine frage:
Zum verarbeiten der Formulardaten definiere ich immer zuerst die übergebenen Variablen, z.b. so:
$seiten = $_POST['seiten'];
$bilder = $_POST['bilder'];
$design = $_POST['design'];
...

aber das sollte doch auch mit einer schleife gehen, oder?
[COLOR=red]unsolved[/COLOR]

netcup.de Warum gibt es hier Werbung?
dookie dookie am 22.07.06 14:13

Ich hoffie ich hab dein Problem richtig verstanden, aber ich denke mal, du meinst das so:
<select name="seiten">
<?php
for ($i = 1; $i < 20; $i++)
{
if ($i == $_POST['seiten'])
{
echo "<option selected=\"selected\">$i</option>";
}
else
{
echo "<option>$i</option>";
}
}
?>
</select>


Quote
wie schicke ich die formulardaten an eine alternative adresse um sie dort weiterzuverarbeiten?

Das geht mit dem Action-Attribut im <Form>-Tag
<form action="alternative_seite.php">

Christian am 22.07.06 14:22

wunderbar, das select problem ist genau so gelöst wie ich es wollte :P

bei der alternativen seite hast mich wohl missverstanden imo, denn zum einen müssen die eingaben zuerst auf der eingabeseite verwertet werden (ein preis wird ausgerechnet) dann sollen die eingaben an ein kontaktformular geschickt werden und dort in ein textfeld eingetragen werden :) hoffe jetzt ist es klarer

der_nic der_nic am 23.07.06 13:56

also du willst es so?
-Eingabe durch User
-Absenden
-Preis wird in der gleichen Datei ausgerechnet und angezeigt
-nochmals Absenden
-neue Datei wird angezeigt

dann könntest du dort wo der Preis ausgerechnet wird, versteckte Inputs machen (<input type="hidden" name="bla" value="<?=$_POST['bla']?>" />) in denen die Werte zwischen gespeichert werden

assassin am 23.07.06 13:59

Weiterleiten:

<?
header("Location: kontakt.php?preis=$preis");
?>

Christian am 23.07.06 16:19

ich hab mir jetzt was anderes überlegt :)

einfach n link auf den der benutzer klickt, falls er zufrieden ist. an den werden dann halt die ganzen paramenter drangehängt :)


bleibt noch das letzte problem mit dem definieren der variablen

sili sili am 23.07.06 19:57

extract() ;)

Christian am 24.07.06 09:42

wow, das versteh ich ja mal garnicht mehr
wäre nett wenn du mir das einfach mal aufschreiben könntest mit ein paar kleinen erklärungen dazu :)

sili sili am 24.07.06 12:01

extract($_POST);
echo $xy; // = $_POST['xy']


Ist doch simpel :)

nuit nuit am 24.07.06 12:17

dann würde ich lieber:
$after_link = '?';
foreach($_POST as $key=>$elem) {
$after_link .= "$key=$elem&";
}
$after_link = substr($after_link,0,-1);

print $after_link;


Achtung ungetestet :D jetzt hast du alles in get variablen hintendran....

nun kannst du mit:
print 'output.php'.$after_link;

Neals am 24.07.06 12:51

kannst dir nen Array schreiben und dann mit foreach für jedes Element die Post auslesen und das in ein neues Array schreiben:

$Daten = array ('seiten' => "", 'bilder' => "", 'design'=> "");

foreach($Daten as $key => $value) {
$Daten[$key] = $_POST[$key];
}


Denke so sollte es gehen...

dookie dookie am 24.07.06 13:39

Quote
Original von sili
extract($_POST);
echo $xy; // = $_POST['xy']


Ist doch simpel :)


Das ist genauso unsicher und schlecht wie register_globals on. Da ist es wesentlich besser, wenn er nur die Variablen, die er auch braucht, sich nochmal in eine "kurze" Variable kopiert.

milahu milahu am 24.07.06 14:07

Wäre es nicht einfacher, die Werte immer per GET zu übergeben?
So'n Misch-masch is ja nicht das wahre..

Christian am 24.07.06 14:32

würdet ihr mir das ganze nochmal eingehender erklären?

wo is unterschied zwischen get/post in punkto sicherheit und wieso mischmasch?

milahu milahu am 24.07.06 14:40

> wo is unterschied zwischen get/post in punkto sicherheit

Da gibts keinen Unterschied.


> und wieso mischmasch?

Einmal GET, einmal POST = Mischmasch :)

nuit nuit am 24.07.06 14:46

doch es gibt einen unterschied...mit GET kannst du nur eine bestimmte länge übergeben...bei Post variablen ist das egal, weil die als Content in der Anfrage drinstehn :D

das ist der Unterschied...wieviel du bei GET variablen hing hängen kannst...musste nachschauen, keine Ahnung :D

edit: ok in Punkto sicherheit, sehe ich auch keinen unterschied

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt