Vérifier si un lien entré existe!... [PHP ou JS?] - PHP - Programmation
Marsh Posté le 26-04-2002 à 12:41:13
oui en js tu ouvre une autre fenetre et tu met "location.href="avec le lien, ensuite ca charge la page et tu recupere l'entete http (je sais pas comment faire mais il doit y avoir moyen) et tu regarde si il y a un code d'erreur ou si ca marche.
bon c'est bourrin comme solution mais ,ca doit marcher (si tu trouve un moyen de lire l'entete http)
Marsh Posté le 26-04-2002 à 12:44:54
précision : pour voir si il y a des erreurs tu regarde le code d'état, si il est ok c'est 200.
mais je sais faire ca qu'en servlets... mais doit y avoir moyen en js ou php
Marsh Posté le 26-04-2002 à 13:23:58
mr_mat a écrit a écrit : oui en js tu ouvre une autre fenetre et tu met "location.href="avec le lien, ensuite ca charge la page et tu recupere l'entete http (je sais pas comment faire mais il doit y avoir moyen) et tu regarde si il y a un code d'erreur ou si ca marche. bon c'est bourrin comme solution mais ,ca doit marcher (si tu trouve un moyen de lire l'entete http) |
kikiséfaire?
Marsh Posté le 26-04-2002 à 13:41:44
j'ai déjà fait un truc comme ça en java/jsp si ça t'interesse.. ça doit etre adaptable au php assez facilement
(et plus fiable que du js)
Marsh Posté le 26-04-2002 à 13:47:20
ben là je crois que ca ca marche:
if (@fopen('adresse','r'==false) echo "existe pas"
mais ca peut etre interessant de voir ton code ASP quand meme
Marsh Posté le 26-04-2002 à 13:53:07
Goueg a écrit a écrit : ben là je crois que ca ca marche: if (@fopen('adresse','r'==false) echo "existe pas" mais ca peut etre interessant de voir ton code ASP quand meme |
qui c qu'a parlé d'asp ?
Marsh Posté le 26-04-2002 à 14:04:23
Goueg a écrit a écrit : jsp pardon, j'ai rippé |
un bout de classe qui va mater ton url et te renvoie le contenu <title> si ça existe
si l'url existe pas>> IOException
[pre]
public static String readTitle(URL url) throws MalformedURLException, IOException {
HttpURLConnection myConn = (HttpURLConnection) url.openConnection();
myConn.connect();
int length = myConn.getContentLength();
StringBuffer sb = new StringBuffer();
BufferedReader in = new BufferedReader(new InputStreamReader(myConn.getInputStream()));
char charBuffer[] = new char[1];
int pos = 0;
boolean bool = true;
while( in.read(charBuffer,0,1) != -1 ) {
sb.append(charBuffer[0]);
pos++;
if (sb.length()>8 && (((sb.substring(pos-8, pos)).toLowerCase()).equals("</title>" ))) break;
}
myConn.disconnect();
int start = (sb.toString().toLowerCase()).indexOf("<title>" ) + 7;
int end = (sb.toString().toLowerCase()).indexOf("</title>" );
String title = "";
if (start>=0 && end>=0) title = sb.substring(start, end);
return (StringUtils.str_replace("\n", "", title));
}
[/pre]
Marsh Posté le 26-04-2002 à 14:14:02
Goueg a écrit a écrit : ben là je crois que ca ca marche: if (@fopen('adresse','r'==false) echo "existe pas" mais ca peut etre interessant de voir ton code ASP quand meme |
putaing c'est excellent ca !!
vachement plus simple que je pensait.
Marsh Posté le 26-04-2002 à 14:31:50
Goueg a écrit a écrit : moi ossi tu te barres a kelle H? h |
vers 17h
Marsh Posté le 26-04-2002 à 14:37:57
Goueg a écrit a écrit : ouah moa je v y aller d'ici qques minutes... |
stagiaire?
Marsh Posté le 26-04-2002 à 14:41:09
tu savais po? c ke je suis - chiant que certains
là je dépasse les 37H, je v me faire virer si je continue, il vo mieux que je rentre bosser chez moua
[jfdsdjhfuetppo]--Message édité par Goueg le 26-04-2002 à 14:54:08--[/jfdsdjhfuetppo]
Marsh Posté le 26-04-2002 à 12:25:30
un utilisateur entre un lien dans un formulaire, et il faudrait pouvoir vérifier qu'il existe vrmt (pas juste que la syntaxe est bonne, mais que si on va sur le lien ca ouvre bien un site koi ).
Yaurait moyen?