if (isset($userfile))

abanta

Mitglied
Guten Morgen

ich habe volgendes Script:
Code:
<?
include "../config.php";

if (isset($userfile)) {
    echo "blablabla";
}
else
{
?>
<form method="POST" enctype="multipart/form-data" action="<? echo $PHP_SELF;?>" >
    <div align="center"><p><input type="file" name="userfile" size="40"></p></div>
    <div align="center"><p>Name:&nbsp;<INPUT type="text" name="txtName"></p></div>
    <div align="center"><input type="submit" value="<?echo $buttonSpeicher;?>" name="B1">&nbsp;<input type="reset" value="<?echo $buttonAbbruch;?>" name="B2"></div>
</form>
<?
}
?>
wenn ich das Vormular ausfühle und abschicke das er nicht oben in die if Abfrage reingeht.
Das sollte er doch oder, ich bekomme auch keine fehler angezeigt.

Danke
 
ja gut ok das geht aber wenn ich nun
Code:
    echo "blablabla";
duch
Code:
    echo "$txtName";
    echo "$userfile";
ersetze scheint beides nicht gesetzt zusein.
 
Wenn doch schon
PHP:
if (isset($userfile))
false zurueckgibt, kann
PHP:
echo $userfile;
wohl kaum was ausgeben oder?

Bitte mitdenken!

Ausserdem sind Dateien Arrays. In der Variable steht auch nicht der Inhalt der Datei drin.
Hier im Forum gibt es gutes Tutorial zum Thema Uploads. Das solltest Du Dir mal reinziehen.

Die Informationen ueber hochgeladene Dateien stehen im Array $_FILES.
Deine Variable $txtName wirst Du in $_POST finden.

Du programmierst fuer register_globals=on obwohl es offensichtlich off zu sein scheint.
 
klasse...
Wenn du weiter oben mal gesehn hätest du gesehn das der ausgangspungt
Code:
if (isset($userfile))
war
Code:
if (isset($txtName))
geht übrigens auch nich.
Es geht auch nicht um den Inhalt sondern ob die Variablen (noch nich)
sondern ist sie gesetzt oder nich.
 
abanta hat gesagt.:
klasse...
Wenn du weiter oben mal gesehn hätest du gesehn das der ausgangspungt
Code:
if (isset($userfile))
war
Code:
if (isset($txtName))
geht übrigens auch nich.
Es geht auch nicht um den Inhalt sondern ob die Variablen (noch nich)
sondern ist sie gesetzt oder nich.
Ach nee, welch Wunder. :rolleyes:

PHP:
if (isset($txtName))
kann genauso wenig funktionieren wie
PHP:
if (isset($userfile))
oder
PHP:
echo $userfile;
oder
PHP:
echo $txtName;

Lies Dir nochmal meinen vorigen Post genau durch und dann fang mal an PHP zu lernen und nicht einfach nur wild drauf los zu tippen.
Du musst mit den superglobalen Arrays arbeiten wenn die Parameter oder Dateien uebergibst.

Und weil ich ja nicht will, dass Du frustriert bist, sondern, dass Du was lernst und weiterkommst hab ich Dir auch mal fix den Link fuer das Upload-Tutorial rausgesucht.
 
Das gesamte Project mit ftpuploud, wasserzeichen einfügen, verkleinern, vergrössern und was man noch so brauch für ne Galerie bis vor 2 Tagen bei meinem alten Hoster super gut lief (und nicht nur bei mir) wirst du es woll kaum glauben.

Tatsache ist doch das wenn ich ein Formular mit $PHP_SELF los schicke das man dan den in halt von des Feldes txtBlablabla in der Variablen $txtBlablabla haben sollte. So wir es überall im Netz verkündet. Und so ging es auch die ganze Zeit.
Und jetzt versteh ich nicht warum es nun beim neuen Hoster nicht mehr geht.
 
Ich glaube Dir, dass das Script beim alten Hoster noch lief.

Aber Tatsache ist nunmal, dass Du keine Ahnung von PHP hast und Dir meine Posts auch nicht anstaendig durchliest.

Dass Deine Scripts beim alten Hoster funktioniert haben liegt daran, dass dieser die PHP-Einstellung register_globals auf on hatte.
Der neue hat diese offensichtlich auf off gestellt.
Haettest Du gleich sauber programmiert waere Dir das jetzt passiert und Du braeuchtest jetzt nicht so eine peinliche Show abliefern.

Und es sollte eben nicht so sein, dass man einen uebergebenen Parameter gleich in einer gleichnamigen Variable findet. Und das wird Dir jeder sagen, der sich mit PHP etwas auskennt.
 
Hallo!

Hat reptiler doch schon gesagt......
Nur weil bei deinen bisherigen Hostern register_globals=ON war, heisst es noch lange nicht dass es beim neuen Hoster auch so ist..... im gegenteil, der neue Hoster macht genau dass, was aus Sicherheitsgründen geraten wird.

Gruss Dr Dau
 
Selbst wenn du ein Formular mit $PHP_SELF übergibst und die Variablen auf der selben Seite definiert werden, so stehen diese nun mal in dem supperglobalen Array $_POST drin.
Und wenn dein neuer Hoster seine RegisterGlobals auf "off" hat, dann kommst du nur an die Variablen, wenn du $_POST[$variable] entsprechend ausliest.
 
Zurück