Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di grendy
    Registrato dal
    Aug 2003
    Messaggi
    338

    controllare se un link è valido o meno

    Salve a tutti,
    mi serve una funzione che controlli se un link e valido, quando l'utente ci clicca sopra, e in caso di esito negativo lo manda ad una pagina di cortesia
    tipo
    link in manutenzione bla, bla,

    da dove comincio?
    «Sono le azioni che contano. I nostri pensieri, per quanto buoni possano essere, sono perle false fintanto che non vengono trasformati in azioni. Sii il cambiamento che vuoi vedere avvenire nel mondo». (Mahatma Gandhi)

  2. #2
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    penso sia meglio risolvere in prima battuta via js e poi ammesso via php...

    per js trovi su pro.html.it alla voce js e http sotto la cat js

    per php semplicemente simuli la chiamata alla pagina quando stampi il link e se ti da 404 e simili di ritorno allora lo sostituisci con il link di cortesia...

    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  3. #3
    Utente di HTML.it L'avatar di grendy
    Registrato dal
    Aug 2003
    Messaggi
    338
    non me la cavi molto con javascript, mi aiuti,
    questo è il codice che ho scritto finora, ma non sembra funzionare
    codice:
    <html>
    <head>
    <title>javascript controllo link</title>
    <script language="javascript">
    function getXMLHttp() {
      var xmlhttp = null;
      if (window.ActiveXObject) {
        if (navigator.userAgent.toLowerCase().indexOf("msie 5") != -1) {
          xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } 
        else {
          xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
      }
      if (!xmlhttp && typeof(XMLHttpRequest) != 'undefined') {
        xmlhttp = new XMLHttpRequest()
      }
      return xmlhttp
    }
    
    function isLink(link) {
      var r
      r = true;
      objHTTP = getXMLHttp();
      objHTTP.open("HEAD", link, false);
      objHTTP.send(null);
      if (objHTTP.readyState==4) {
        if (objHTTP.status==404) {
          r = false;
        }
      }
      return r;
    }
    
    function openLink(link) {
      if (isLink(link)) {
        window.open(link); }
      else {
        alert("link non più attivo"); }
    }
    </script>
    </head>
    <body>
    <p style="cursor: pointer;" onclick="javascript:openLink('http://www.***.net/');">***</p>
    
    
    <p style="cursor: pointer;" onclick="javascript:openLink('http://www.***.net/preview.htm');">***</p>
    
    
    <p style="cursor: pointer;" onclick="javascript:openLink('http://www.***.net/preview.html');">Link di test</p>
    </body>
    </html>
    è online su www.enginet.biz/javascript link interrotto.htm
    «Sono le azioni che contano. I nostri pensieri, per quanto buoni possano essere, sono perle false fintanto che non vengono trasformati in azioni. Sii il cambiamento che vuoi vedere avvenire nel mondo». (Mahatma Gandhi)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.