Ich habe heut bei einem kostenlosen Webhoster einen so genannten "free Webspace" eingerichtet, damit ich in Foren etc. mal n paar Bildchen ablegen und posten kann. Dabei wurde mir beim 1.Versuch klar, dass der Anbieter das nicht möchte. Statt des Bildes anzuzeigen kommt sowas hier:
[Blockierte Grafik: http://honk1000.ho.ohost.de/ue_pics/ues_colors2.jpg]
Mist! Dachte ich und im nächsten Schritt dachte ich "Und warum sollte man das nicht umgehen?! Denn PHP bietet der Webspace ja."
Gedacht - getan. Und somit biete ich euch das Script hier zum Download an, denn diesen Fall hat man ja ab und zu mal. Dann wäre es schon schön, wenn man die Verlinkerei nutzen könnte.
Das Script wird im Root der eigenen Seite abgelegt und in dieser Form aufgerufen
Zitat
Dies kann man dann auch bequem mit dem IMG-Tag im BBCode kombinieren. Dann kann man obiges Bild wie folgt sichtbar machen.
[Blockierte Grafik: http://honk1000.ho.ohost.de/giveObj.php?pi…ues_colors2.jpg]
Und somit kann man Bilder extern verlinken, obwohl es der Anbieter zu unbinden versucht. Leider muss es auch das Forum unterstützen. Hier funktioniert das nicht, aber in anderen Foren klappts. Liegt vermutlich daran, dass die IMG-URL noch geparst wird und das .php? nicht akzeptiert wird. Schade. Frage an den Admin: Ist dem so oder hat das andere Ursachen?
Hier funktioniert das z.B.: http://ultraedit.com/index.php?name…pic&p=6557#6557
PS: Wer mag kann es ja noch erweitern. Einen Anfang habe ich schon gemacht und die Möglichkeit eingebaut auch Dateien zu verlinken. Aber wer das braucht, muss hier ein wenig Zeit investieren.
Enjoy!
<?
// gibt ein angegebenes Bild zurück
// Author: HiDeVis
//====================================
function sendOutput($sourceImage, $type) {
// sended den Output, also das erzeugte Bild an den Browser
switch ($type) {
case "IMG":
$src_img = imagecreatefromjpeg($sourceImage);
header("Content-type: image/jpg");
imagepng($src_img);
imagedestroy($src_img);
break;
case "FILE":
// Code für die Rückgabe der Datei
break;
}
}
//===================================
// import Variablen von der URL (register_global=off - kompatibel)
if (isset($_GET['pic'])) $pic = $_GET['pic'];
else unset($pic);
if (isset($_GET['file'])) $fname = $_GET['file'];
else unset($fname);
// Bild prüfen und zurückgeben
if (isset($pic)) {
if (file_exists($pic)) {
$imgInfo = getimagesize($pic);
$picFormat = $imgInfo[2];
switch ($picFormat) {
case 1:
case 2:
case 3:
case 4:
sendOutput($pic, "IMG");
break;
default:
echo "given object $picFormat isn't any known image format";
}
}
else {
echo "the specified object isn't on the server or wrong path given";
}
}
// Datei prüfen und zurückgeben
if (isset($fname)) {
if (file_exists($fname)) {
// Code für die Ausgabe einer Datei
}
else {
echo "the specified object isn't on the server or wrong path given";
}
}
?>
Alles anzeigen