Autor |
Nachricht |
Lapje
Threadersteller
Dabei seit: 17.06.2003
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 07.12.2004 10:59
Titel Unterschiede $Ausgabe und $_POST["Ausgabe"] ??? |
|
|
Mahlzeit alle miteinand...
Hab mal ne Frage...
Arbeite mich gerade ein wenig in PHP ein...bin jetzt auf zwei Ausgabe-Möglichkeiten gestoßen: Zum einen $Ausgabe und zum anderen $_POST["Ausgabe"] . Ersteres soll unsicher sein, aber hält den Code recht klein. Kann mir jemand sagen wo die UNterschiede liegen bzw. welche Methode besser ist in Bezug auf z.B. Möglichkeiten ? Womit arbeitet ihr denn so ???
besten dank
Lapje
|
|
|
|
|
eViLaSh
Dabei seit: 22.05.2003
Ort: Texas
Alter: 40
Geschlecht:
|
Verfasst Di 07.12.2004 11:02
Titel
|
|
|
mit $_POST[Variable] frägst du halt genau die Variable ab, die über den Browser per POST weitergegeben wurde...
ich arbeite nur so...
|
|
|
|
|
Anzeige
|
|
|
beeviZ
Dabei seit: 30.09.2002
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 07.12.2004 11:03
Titel
|
|
|
und das macht man mittels $ausgabe nicht?
wenn man nur $ausgabe schreibt können die werte über post UND get übergeben werden oder was?
Zuletzt bearbeitet von beeviZ am Di 07.12.2004 11:03, insgesamt 1-mal bearbeitet
|
|
|
|
|
eViLaSh
Dabei seit: 22.05.2003
Ort: Texas
Alter: 40
Geschlecht:
|
Verfasst Di 07.12.2004 11:34
Titel
|
|
|
doch...aber dabei müsstest du register_globals On haben, welches aber eine sicherheitslücke in PHP ist, wenn es unbedarft eingestzt wurde...
deshalb globals OFF
dann muss man seine variablen über die jeweiligen arrays ansprechen:
$_POST enthält alle Daten per POST,
$_GET alle per GET,
$_COOKIES alle per Cookie.
Dann gibt es noch einen Array wo nicht nach diesen 3 Herkunftsmöglichkeiten unterschieden wird:
$_REQUEST,
es ginge also auch:
$_REQUEST['var'];
hier noch ein Link: http://www.php3.de/manual/en/language.variables.predefined.php
Zuletzt bearbeitet von eViLaSh am Di 07.12.2004 13:13, insgesamt 2-mal bearbeitet
|
|
|
|
|
gtz
Dabei seit: 15.04.2002
Ort: -
Alter: 48
Geschlecht:
|
Verfasst Di 07.12.2004 12:13
Titel
|
|
|
wenn du $_POST["foo"] auch in $foo wiederfindest, ist in deiner php-konfiguration die option register_globals eingeschaltet, die eben dafür sorgt, daß die elemente der ganzen supergloablen arrays im gesamten namespace zur verfüfung stehen, also z.b. $_POST["foo"] als $foo.
der vorteil ist, wie du sagst, daß man sich tipparbeit und denkarbeit spart, beides keine argumente, denn der nachteil ist, daß automatisch jede per post oder get übergebene variable die variable gleichen namens in deinem script überschreibt und so dem misbrauch tür und tor öffnet.
|
|
|
|
|
eViLaSh
Dabei seit: 22.05.2003
Ort: Texas
Alter: 40
Geschlecht:
|
Verfasst Di 07.12.2004 13:14
Titel
|
|
|
hups, hatte mich oben verschrieben, gtz hat natürlich recht
|
|
|
|
|
Lapje
Threadersteller
Dabei seit: 17.06.2003
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 07.12.2004 15:26
Titel
|
|
|
Hab ich das auch soweit richtig verstanden dass ich bei $_POST NUR Variablen abfragen kann die aus einem anderen Formular übergeben wurden ?
Wenn ich zum beispiel aus einem Formular 2 Werte übermittle und (ub17.php, menge) und den in einem anderen Formular (ub17a.php) mit einer festgelegten Variable berechnen lassen möchte, kann ich das Ergebnis nicht per $_POST ausgeben oder mit der Variable als $_POST (z.B. $_POST["benzin"]) in einer Rechnung benutzen...oder ? (ich hoffe ihr versteht was ich meine, siehe dazu unten das Script).
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>UB17a</title>
</head>
<body>
<?php
$benzin = 1.05;
$super = 1.15;
$menge = doubleval($menge);
if ($sorte == "n")
{
$gesamt = $benzin * $_POST["menge"]; oder doch $:_POST["benzin"] * $_POST["menge"]; ????
echo "Sie haben " . $_POST["menge"] . " Liter Normalbenzin bei einem Preis von $benzin Euro getankt<br>";
echo "Der zu zahlende Betrag beträgt $gesamt Euro<br>";
}
else
{
$gesamt = $super * $_POST["menge"];
echo "Sie haben " . $_POST["menge"] . " Liter Superbenzin bei einem Preis von $super Euro getankt<br>";
echo "Der zu zahlende Betrag beträgt $gesamt Euro<br>";
}
?>
</body>
</html>
besten dank für bisherigen Antworten
Lapje
|
|
|
|
|
dastef
Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 07.12.2004 15:31
Titel
|
|
|
daten kann man per get und post übertragen. get = alle variablen
in der url übertragen - siehe google, die machen das.
post = allen variablen "hinten rum" übertragen, du siehst nur
datei.php in der url stehen und keinerlei variablen. post wird
meistens bei formularen verwendet wo viele daten von a nach
b transportiert werden müssen. in deinem fall: $benzin. Weil
Die Variable wird ja in der eigentlichen Datei erst definiert .. die
wird ja nicht übertragen.
|
|
|
|
|
|
|
|
Ähnliche Themen |
Ausgabe
DB Ausgabe addieren
3D daten ausgabe?
XML Ausgabe in Arrays
Sortierte Ausgabe
ausgabe im frame
|
|