variabel bei include weg ...

php_learn

Grünschnabel
Hallo,

ich habe eine "Ellenlange" php-site, und da wollte ich ein bisschen aufräumen,
innerhalb der Site gibt es auch ein Formular, das Formular habe ich aussondiert und hole es in meiner "Ellenlangen" - site mit diesem Tag rein:


PHP-Quellcode:



PHP:--------------------------------------------------------------------------------

<?include("http://www.xxx.de/inc/usw.inc.php");?>

--------------------------------------------------------------------------------



wenn das Formular ausgefüllt wurden ist, wird es geprüft auf ihrer "Richtigkeit", und
anschließend sollen die gemachten Daten für den User nochmal kompakt dargestellt
werden.

also in der Include-datei "usw.inc.php" steht dann z.b. folgendes drinne:


PHP-Quellcode:

Ihr Name:
PHP:--------------------------------------------------------------------------------
<?php print($HTTP_POST_VARS["name"]); ?>
--------------------------------------------------------------------------------

Ihre Mitteilung:
PHP:--------------------------------------------------------------------------------
<?php print($HTTP_POST_VARS["mitteilung"]); ?>
.
.
.
usw.
--------------------------------------------------------------------------------


doch wenn ich dieses Testen möchte sind diese Felder leer!

wenn ich ohne der includierenden Datei arbeite sonder diesen o.g. Tag
in die "Ellenlangen"-site einpflege dann klappt das, kann mir jemand vielleicht
helfen

ok
gruss php_learn :confused:
 
Wenn du entfernte Dateien inkludest, bindest du damit deren HTML-Ausgabe ein(also das verarbeitete Skript).

Lasse das "http://...." in den Pfaden weg und verwende stattdessen einen Pfad im Dateisystem.
 
mmmh, jetzt bin ich ein bisschen unsicher,

also das ganze soll für ein Newsletter sien, mache ich zu erstenmal,
als erste kommt die "standardsit"
als zweites die "check"site, muss ich eigentlich die absolute adresse
einfügen!

also bei <form habe ich dann http://www. usw ...

muss ich bei der zweiten site (check.php) überhaupt die absolute adresse eingeben,
für die include usw.

ich bin jetzt ganz unsicher
 
Ums mal zu verdeutlichen:
auf deiner Domain http://www.domain.de liegen zwei Dateien: index1.php und index2.php

In index2.php steht
Code:
<?php echo 'hallo welt';?>

In index1.php willst du index2.php per readfile() ausgeben.

Code:
readfile('http://www.domain.de/index2.php')
//Ausgabe:hallo welt

readfile('index2.php')
//Ausgabe:<?php echo 'hallo welt';?>
Der Unterschied liegt im Pfad:

das erste mit dem http:// ist eine Serveranfrage über das HTTP-Protokoll.
Logischerweise bekommst du da nur das geliefert, was du auch sehen würdest, wenn du die Datei direkt im Browser aufrufst(stell dir nur vor, was für ein Sicherheitsproblem das wäre, wenn man im Netz beliebige Skripte auslesen könnte)

das 2te ist eine Operation im Dateisystem... etwas grundsätzlich anderes.

Ums also zusammenzufassen:
willst du ein PHP-Skript von deinem eigenen Server includen, musst du die 2.Variante verwenden. Ob der Pfad relativ oder absolut angegeben ist, ist dabei egal.

Absoluter Pfad heisst nicht gezwungenermassen, dass er mit http:// beginnt...sondern bei einem Pfad im Dateisystem, dass der komplette Pfad ausgehend vom Document-Wurzelverzeichnis angegeben wurde.

Im Gegensatz dazu der relative Pfad... der ist immer ausgehend von der aktuellen Position.

Wenn sich die zu includende Datei im selben Verzeichnis befindet wie das Skript, wo sie hinein soll, reicht die Angabe des Dateinamens.

Wenn du immer noch nicht durchblickst, poste mal die kompletten Pfade der beiden betreffenden Dateien.
 
Zurück