Archief - PHP: Controleren of url bestaat

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Kikenie

Legacy Member
Hey,

bestaat er in php een mogelijkheid om te controleren of een url bestaat?
Ik heb namelijk een formulier in mijn website waar personen die ingelogd zjin links kunnen toevoegen. Ze geven hiervoor onder andere een url in. Nu wil ik dat de link enkel wordt toegevoegd als het een juiste url is of de url bestaat.
Ik had eerst geprobeerd om via eregi te controleren of het een mogelijke url is, maar hier had ik nog enkele probleen. Toen dacht dat het beter zou zijn om meteen te controleren of de website ook echt bestaat.
Ik ben dan beginnen knoeien met onderandere get_header en get_meta_tags maar hier had ik ook geen succes.

Iemand een idee hoe ik kan controleren of een url bestaat?

Kikenie

Legacy Member
=[KO]=;7966487 zei:

Heb het voorlopig hiermee proberen op te lossen en het werkt gedeeltelijk. Zolang het gaat om een "normale" url geeft dit geen probleem. Als ik echter probeer met een website al bvb. "https://www.beyondgaming.be/forums" geeft het problemen. Zodra er een /xxx deel in de url staat lijkt het of de url niet meer bestaat.

De oplossingen van Djeez heb ik nog niet kunnen testen wegens te weinig tijd. Heb ze als snel effe bekeken maar geraakte er niet echt wijs uit.
Meer tips zijn altijd welkom.

Edit: Hier de warnings die ik krijg bij de /*** websites
Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /var/ftpdirs/0201822/website/wijziglink2.php on line 28

Warning: fsockopen() [function.fsockopen]: unable to connect to games.telenet.be/forum:80 (Unknown error) in /var/ftpdirs/0201822/website/wijziglink2.php on line 28

Radiance

Legacy Member
De eerste parameter van fsockopen(); is dan ook een IP adres of FQDN, het stuk na de / heeft daar niks mee te maken. Dat is gewoon een handige manier van zeggen tegen de server welke "pagina" jij wil bekijken.

Uit de manual hierboven :
PHP:
   $out = "GET / HTTP/1.1\r\n";

Vervang daar de / door het gewenste pad.

Kikenie

Legacy Member
Heb me er nog eens aangezet en heb het probleem opgelost door gebruik te maken van fopen();

Toch bedankt voor de tips allemaal.

Deze mag dicht.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan