Include

Also, mein Problem ist folgende:

Ich habe auf einem Server folgende Datei (index.php):

[CODE] …

Test

<?PHP include ("http://www.beispiel.com/bs.php"); echo ($link); echo ("123"); ?>

…[/CODE]

und auf

www.beispiel.com die datei bs.php die so aussieht:

[CODE] …

<?php $link="Domainname"; ?>

…[/CODE]

Eigentlich müsste nun auf index.php der link zu www.domain.net sein, jedoch steht er dort nicht! Dort steht nur Test und 123! Ich habe nun alles nochmal ganz genau angeschaut aber keinen fehler gefunden, geht include überhaupt auch über http://. … oder wo liegt sonst mein fehler?

Schonmal was vom Escapen bestimmter Zeichen in PHP gehört?

[Dementius]

Hm, ich hab mir den Artikel durchgelesen, aber ich weiß nich genau wie mir das weiterhelfen soll :confused:
soll ich etwa

include (/"http://www.beispiel.com/bs.php/"); echo ($link); machen oder wie?

[php]$link = „<a href="http://www.domain.net">Domainname“;[/php]
Nicht nur lesen sondern auch verstehen.

[Dementius]

ok, ich hab das jetzt in der datei bs.php geändert so wie dus mir geschrieben hast aber das funktioniert noch nicht

Is die Pfadangabe zu bs.php denn richtig?
Bei mir funktioniert es einwandfrei.

hmm, komisch, vielleicht kann ja mein server kein php (ich hab so nen kostenlosen server von freepages.at)

edit: hab grade mal

<?php echo "test"; ?> gemacht und das test wird auch nicht angezeigt, also liegts warscheinlich an meinem server :frowning: trotzdem vielen dank für deine hilfe!

So, ich hab mir jetzt nen neuen server eingerichtet der PHP kann.
jetzt hab ich das mal auf den neuen server als datei gespeichert:

[code]…

<?php include ("http://www.beispiel.de/links.php"); echo $link; echo $test; echo "bla"; ?>

…[/code]
angezeigt wird jedoch nur bla, das andere nicht, obwohl es ganz sicher auf dem anderen server gespeichert ist und auch die variablen in links.php drinne sind!!

Mod Edit - Doppelpost zusammengefügt, bitte das nächste mal den „Ändern“ Button benutzen (boehseronkel)

Include ist ein Sprachkonstrukt.
Das heißt man verwendet es wie echo. Nur mit Anführungszeichen. Vorzugsweise mit einfachen.
[php]include ‚‘;[/php]

MFG
Alti

so, jetz hab ich das im index.php:

[CODE]…

<?php include 'http://www.beispiel.com/links.php'; echo $link; echo $test; echo "bla"; ?>

…[/CODE]

funktionieren tuts aber trotzdem nich… es wird immer noch nur bla angezeigt!

Der Server unter www.beispiel.com konnte nicht gefunden werden.
Geht das nur mir so?

MFG
Alti

www.beispiel.com is nicht die richtige adresse, in echt is das ne andere, aber ich bin mir 100% sicher dass auf dem server die datei ist und auch die variablen. freigegeben is die datei auch also attribute stimmt

inlude benutz man ganz anders. Da schreibt man nur include „bs.php“ und nicht mit der domain.

ja ich weiß, aber in diesem skript geht es genau darum, ein skript von einer anderen seite einzufügen.

Wenn Du eine PHP-Datei per http einbindest, wird deren Inhalt natürlich von dem Server interpretiert, d.h. der eingebundene Inhalt ist der, den auch ein Browser anzeigen würde und nicht mehr das, was in der Datei steht. Wenn Du es schaffst, dass der Browser ein php Skript anzeigt, das die Definition der Variablen enthält, dann sollte das einbinden klappen.

achso, daran hab ich garnich gedacht, stimmt! aber das geht doch garnich oder? php codes werden doch nie im browser angezeigt?

nein aber php erzeugt mit deinen angaben html code, den der browser dann wiederum anzeigen kann.
dein fehler ist noch, dass die sachen nach dem echo in " " stehen müssen.
probiers mal so:
[php]
$link = „<a href="http://www.domain.net">Domainname“;
echo " „.$link.“
\n";
[/php]

hast du das zufällig auch im php forum gefragt?

mit include kann man kein script von einer anderen Seite einfügen.

ja genau, aber an dem echo liegts glaub ich net.

jetzt hab ich folgende fehlermeldung:

Warning: fsockopen() [function.fsockopen]: unable to connect to www.beispiel.com:-1 (Failed to parse address „www.beispiel.com“) in D:**\htdocs**\beispiel.com\index.php on line [B]13

[/B]line 13 ist übrigens diese:
[PHP]fsockopen(‚www.beispiel.com‘);[/PHP]