ThWboard Support-Forum (Archiv)

Ort: / Boardübersicht / PHP / MySQL Probleme / Externe URL prüfen


Seite 1 von 1

PhoenixDH schrieb am 23.11.2004 um 09:00 Uhr

Wie kann ich überprüfen, ob eine externe URL, bzw. Bild existiert ?

Mit fopensock oder ? Aber das will irgendwie net so hinhaun !

MrNase schrieb am 23.11.2004 um 12:20 Uhr

Schau mal in die 2.85 RC 2, da ist sowas für Avatare drin :)

PhoenixDH schrieb am 23.11.2004 um 13:58 Uhr

Alles klar, danke !

du meinst allow_url_fopen ?

theDon schrieb am 25.11.2004 um 00:00 Uhr

MrNase postete
Schau mal in die 2.85 RC 2, da ist sowas für Avatare drin :)

nein, nicht wirklich. das ist nur ein übler hack. (mangels alternativen)

PhoenixDH schrieb am 25.11.2004 um 13:49 Uhr

Ich habs immer noch net hinbekommen, aber ich gebe den Kampf nicht auf, vorher veröffentliche ich den Hack nicht ! :)

PhoenixDH schrieb am 25.11.2004 um 16:35 Uhr

Wieso gibt er mir hier bei jedem Bild das ich prüfe diese Fehlermeldung aus ? auch wenn ich genau weiß das dieses Bild existiert ?

$fp = fsockopen ($toplist['sitebanner'], 80, &$errno, &$errstr, 30);
if (!$fp) 
    {
        $err_msg .= "Sie haben eine ungültige Banner URL angegeben !<br>";
    } 
else 
    {
        fputs ($fp, "GET / HTTP/1.0\r\n\r\n");
        while (!feof($fp)) 
        {
            echo fgets($fp,128);
            }
        fclose($fp);
    }

bdominik schrieb am 25.11.2004 um 16:57 Uhr

weil php evtl fsockopen blockt! ist standarteinstellung.

PhoenixDH schrieb am 25.11.2004 um 18:07 Uhr

Ist das von meinem Server oder dem anderen seinem abhängig ?

theDon schrieb am 25.11.2004 um 18:18 Uhr

von deinem.

PhoenixDH schrieb am 25.11.2004 um 22:45 Uhr

wo finde ich die einstellungen, ich hab nur webspace ! :(

bdominik schrieb am 25.11.2004 um 22:46 Uhr

dann kannste es vergessen, darf nur der hoster ändern.

PhoenixDH schrieb am 26.11.2004 um 07:58 Uhr

Gibt es dann noch irgend eine andere Möglichkeit zu prüfen, ob das Bild existiert ?

Hab das jetzt nochmal mit dem Code aus der functions.inc.php versucht:

function checksize($banner)
{
  if(!ini_get('allow_url_fopen'))
    {
    return;
    }

    if ( $ic_bannersize = @getimagesize($toplist['sitebanner']) ) 
    {
        if ( $ic_bannersize[0] > 468 )
        { 
            $err_msg .= 'Ihr Banner ist zu breit. Max. 468 Pixel !<br>';
        }
        if ( $ic_bannersize[1] > 60 )
        { 
            $err_msg .= 'Ihr Banner ist zu hoch. Max. 60 Pixel !<br>';
        }
        if ( $ic_bannersize[2] > 3 )
        {
            $err_msg .= 'Ihr Banner hat ein ung&uuml;ltiges Format.<br>';
        }
    }
    else
    {
        $err_msg .= 'Ihr Banner konnte nicht geladen werden.<br>'; 
    }
}

und mit

checksize($toplist['sitebanner']);

aufgerufen, jetzt erhalte ich aber nur nen weißen Screen nach dem abschicken !

MrNase schrieb am 26.11.2004 um 11:22 Uhr

Ähm.. Ohne return irgendwas; wird das nix weil die Funktion dann ja nix zurückgibt :)

http://de3.php.net/return :)

PhoenixDH schrieb am 26.11.2004 um 11:44 Uhr

Hab ich aber so aus dem Code !

Hab in der Referenz gelesen, das ini_get einen Konfigurationswert zurückgibt, müsste das dann hier nicht ne andere Variable sein ?

Aber der gibt mir immer den weißen Screen egal ob gültig oder nicht !

bdominik schrieb am 26.11.2004 um 13:41 Uhr

das kannste nicht per ini_get setzten, steht so in der doku, lies einfach mal.

MrNase schrieb am 26.11.2004 um 14:40 Uhr

Will er garnicht :)

Er will nur gucken ob wie es um allow_url_fopen in der php.ini steht und dafür geht ini_get.. Für was anderes müsste er ini_set nehmen aber dafür hat kaum einer bei nem normalen Webhoster die erforderlichen Rechte.

PhoenixDH schrieb am 26.11.2004 um 15:02 Uhr

Ich glaube ich vergesse das ganze !

theDon schrieb am 26.11.2004 um 21:03 Uhr

MrNase postete
Will er garnicht :)

das sowieso nicht, das ist nämlich ein stück aus dem thwb-source. ;)

PhoenixDH schrieb am 26.11.2004 um 21:41 Uhr

Ich hab mich jetzt entschieden den Hack so zu lassen und Morgen oder so zu veröffentlichen, dann kann ihn ja jemand erweitern der es hinbekommt und Lust dazu hat, ich bin mit meinem LAtein am Ende.

Seite 1 von 1