Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    telefono e espressioni regolari

    scusate, mi serve un aiuto:
    devo fare un controllo sul formato del numero di telefono:
    1) DEVE ESSERE OBBLIGATORIO-> e fin qui ci sono
    2) DEVE ESSERE NUMERICO, ma può contenere segno + nella giusta posizione, spazi segni - o / o . ma alla fine deve essere un numero di telefono.
    -> per risolvere questo:
    ho trovato questa espressione regolare:

    ("/^\+{0,1}\d{0,4}[-|\\\| |\/]{0,1}\d{3,5}[-|\\\|\/]{0,1}\d{5,10}$/U")

    che non riesco a farla funzionare!!

    Ho letto un po' in giro circa le espressini regolare, ho cercato di semplificarla al massimo, ma non riesco a passargli un numero di telefono corretto.
    Come mai?

    ecco lo script:
    <?
    $telefono='+0052-125-01234';

    if (!eregi("^\+{0,1}\d{0,4}[-|\\\| |\/]{0,1}\d{3,5}[-|\\\|\/]{0,1}\d{5,10}$/U", $telefono))
    echo "
    Telefono NON valido";
    }
    else
    {
    echo "
    Telefono valido";
    }
    ?>

  2. #2
    P.S: se avete qualche esempio semplice in modo anche l'utente più incapace sia obbligato a inseriere un numero di telefono e lo dia in modo corretto sarebbe utilissmo.
    Faccio un esempio: clicca nazione->track elenco dei prefissi possibili digiata solo un numero,
    se italia diviso per province italiane sarebbe ancora meglio con l'inserimento anche dei cellulari (con diversificazione dei prefissi per gestiore ) sarebbe ottimo.


    ....c'è chi vuloe la luna ...

  3. #3
    SU

  4. #4
    se può servire a qualcuno posto qui una soluzione che ho trovato e un po' elaborato io stessa.

    Quello che fa: grazie a un menu a tendina sceglie il paese e dopo questa scelta viene già settato il prefisso che non è modificabile dall'utente, il quale dovrà inserire solo il numero di telefono che accetta solo interi. Il controllo numeri viene fatto su onkeypress in modo da non dover effettuare un controllo dopo l'inserimento del dato.

    ecco quanto ho scritto è una soluzione in javascript (se qlc ha soluzioni più eleganti me lo faccia sapere)


    <script>
    function checkPrefisso(){ form = document.forms['RicercaPaese'];


    var prefissi = new Array();
    prefissi[0 ]="+355";
    prefissi[1 ]="+213";
    prefissi[2 ]="+376";
    prefissi[3 ]="+1268";
    prefissi[4 ]="+966";
    prefissi[5 ]="+54";
    prefissi[6 ]="+61";
    prefissi[7 ]="+43";
    prefissi[8 ]="+994";
    prefissi[9 ]="+973";
    prefissi[10 ]="+880";
    prefissi[11 ]="+1246";
    prefissi[12 ]="+32";
    prefissi[13 ]="+501";
    prefissi[14 ]="+229";
    prefissi[15 ]="+1441";
    prefissi[16 ]="+375";
    prefissi[17 ]="+591";
    prefissi[18 ]="+387";
    prefissi[19 ]="+55";
    prefissi[20 ]="+359";
    prefissi[21 ]="+226";
    prefissi[22 ]="+855";
    prefissi[23 ]="+237";
    prefissi[24 ]="+1";
    prefissi[25 ]="+238";
    prefissi[26 ]="+590";
    prefissi[27 ]="+1345";
    prefissi[28 ]="+420";
    prefissi[29 ]="+56";
    prefissi[30 ]="+86";
    prefissi[31 ]="+357";
    prefissi[32 ]="+57";
    prefissi[33 ]="+242";
    prefissi[34 ]="+82";
    prefissi[35 ]="+225";
    prefissi[36 ]="+385";
    prefissi[37 ]="+53";
    prefissi[38 ]="+45";
    prefissi[39 ]="+1767";
    prefissi[40 ]="+593";
    prefissi[41 ]="+20";
    prefissi[42 ]="+971";
    prefissi[43 ]="+372";
    prefissi[44 ]="+251";
    prefissi[45 ]="+63";
    prefissi[46 ]="+358";
    prefissi[47 ]="+33";
    prefissi[48 ]="+241";
    prefissi[49 ]="+220";
    prefissi[50 ]="+995";
    prefissi[51 ]="+49";
    prefissi[52 ]="+233";
    prefissi[53 ]="+1876";
    prefissi[54 ]="+81";
    prefissi[55 ]="+350";
    prefissi[56 ]="+962";
    prefissi[57 ]="+30";
    prefissi[58 ]="+1473";
    prefissi[59 ]="+44";
    prefissi[60 ]="+852";
    prefissi[61 ]="+91";
    prefissi[62 ]="+62";
    prefissi[63 ]="+964";
    prefissi[64 ]="+353";
    prefissi[65 ]="+354";
    prefissi[66 ]="+44";
    prefissi[67 ]="+298";
    prefissi[68 ]="+972";
    prefissi[69 ]="+39";
    prefissi[70 ]="+44";
    prefissi[71 ]="+996";
    prefissi[72 ]="+254";
    prefissi[73 ]="+377";
    prefissi[74 ]="+965";
    prefissi[75 ]="+262";
    prefissi[76 ]="+856";
    prefissi[77 ]="+371";
    prefissi[78 ]="+961";
    prefissi[79 ]="+218";
    prefissi[80 ]="+423";
    prefissi[81 ]="+370";
    prefissi[82 ]="+352";
    prefissi[83 ]="+852";
    prefissi[84 ]="+389";
    prefissi[85 ]="+261";
    prefissi[86 ]="+265";
    prefissi[87 ]="+960";
    prefissi[88 ]="+60";
    prefissi[89 ]="+223";
    prefissi[90 ]="+356";
    prefissi[91 ]="+212";
    prefissi[92 ]="+222";
    prefissi[93 ]="+230";
    prefissi[94 ]="+52";
    prefissi[95 ]="+373";
    prefissi[96 ]="+381";
    prefissi[97 ]="+258";
    prefissi[98 ]="+264";
    prefissi[99 ]="+227";
    prefissi[100 ]="+234";
    prefissi[101 ]="+47";
    prefissi[102 ]="+64";
    prefissi[103 ]="+31";
    prefissi[104 ]="+968";
    prefissi[105 ]="+92";
    prefissi[106 ]="+972";
    prefissi[107 ]="+507";
    prefissi[108 ]="+595";
    prefissi[109 ]="+51";
    prefissi[110 ]="+48";
    prefissi[111 ]="+351";
    prefissi[112 ]="+974";
    prefissi[113 ]="+44";
    prefissi[114 ]="+243";
    prefissi[115 ]="+1809";
    prefissi[116 ]="+40";
    prefissi[117 ]="+7";
    prefissi[118 ]="+1869";
    prefissi[119 ]="+1758";
    prefissi[120 ]="+221";
    prefissi[121 ]="+381";
    prefissi[122 ]="+248";
    prefissi[123 ]="+232";
    prefissi[124 ]="+65";
    prefissi[125 ]="+963";
    prefissi[126 ]="+421";
    prefissi[127 ]="+386";
    prefissi[128 ]="+34";
    prefissi[129 ]="+94";
    prefissi[130 ]="+27";
    prefissi[131 ]="+249";
    prefissi[132 ]="+46";
    prefissi[133 ]="+41";
    prefissi[134 ]="+268";
    prefissi[135 ]="+737";
    prefissi[136 ]="+239";
    prefissi[137 ]="+255";
    prefissi[138 ]="+66";
    prefissi[139 ]="+228";
    prefissi[140 ]="+216";
    prefissi[141 ]="+90";
    prefissi[142 ]="+380";
    prefissi[143 ]="+256";
    prefissi[144 ]="+36";
    prefissi[145 ]="+1";
    prefissi[146 ]="+998";
    prefissi[147 ]="+58";
    prefissi[148 ]="+84";
    prefissi[149 ]="+967";
    prefissi[150 ]="+260";
    prefissi[151 ]="+263";
    form.prefisso.value= prefissi[form.PAESE.value-1];
    }

    function getkey(e)
    {
    if (window.event)
    return window.event.keyCode;
    else if (e)
    return e.which;
    else
    return null;
    }


    function goodchars(e, goods)
    {
    var key;
    var keychar;
    key = getkey(e);
    if (key == null) return true;

    // get character
    keychar = String.fromCharCode(key);
    keychar = keychar.toLowerCase();
    goods = goods.toLowerCase();

    // check goodkeys
    if (goods.indexOf(keychar) != -1)
    return true;

    // control keys
    if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )
    return true;

    // else return false
    return false;
    }




    </script>

    <form action="script_telefono.php" method="POST" name="RicercaPaese" id="RicercaPaese">
    <Table>
    <tr>
    <td valign="middle"><select name="PAESE" id="PAESE" class="cmdselect" onchange='checkPrefisso()'>
    <option name="" value="0">-- destinazione --</option>
    <option value="1">ALBANIA</option>
    <option value="2">ALGERIA</option>
    <option value="3">ANDORRA</option>
    <option value="4">ANTIGUA E BARBUDA</option>
    <option value="5">ARABIA SAUDITA</option>
    <option value="6">ARGENTINA</option>
    <option value="7">AUSTRALIA</option>
    <option value="8">AUSTRIA</option>
    <option value="9">AZERBAIJAN</option>
    <option value="10">BAHREIN</option>
    <option value="11">BANGLADESH</option>
    <option value="12">BARBADOS</option>
    <option value="13">BELGIO</option>
    <option value="14">BELIZE</option>
    <option value="15">BENIN</option>
    <option value="16">BERMUDA</option>
    <option value="17">BIELORUSSIA</option>
    <option value="18">BOLIVIA</option>
    <option value="19">BOSNIA ERZEGOVINA</option>
    <option value="20">BRASILE</option>
    <option value="21">BULGARIA</option>
    <option value="22">BURKINA FASO</option>
    <option value="23">CAMBOGIA</option>
    <option value="24">CAMERUN</option>
    <option value="25">CANADA</option>
    <option value="26">CAPO VERDE</option>
    <option value="27">CARAIBI FRANCESI </option>
    <option value="28">CAYMANS</option>
    <option value="29">CECA, REP.</option>
    <option value="30">CILE</option>
    <option value="31">CINA</option>
    <option value="32">CIPRO</option>
    <option value="33">COLOMBIA</option>
    <option value="34">CONGO</option>
    <option value="35">COREA DEL SUD</option>
    <option value="36">COSTA D'AVORIO</option>
    <option value="37">CROAZIA</option>
    <option value="38">CUBA</option>
    <option value="39">DANIMARCA</option>
    <option value="40">DOMINICA</option>
    <option value="41">ECUADOR</option>
    <option value="42">EGITTO</option>
    <option value="43">EMIRATI ARABI UNITI</option>
    <option value="44">ESTONIA</option>
    <option value="45">ETIOPIA</option>
    <option value="46">FILIPPINE</option>
    <option value="47">FINLANDIA</option>
    <option value="48">FRANCIA</option>
    <option value="49">GABON</option>
    <option value="50">GAMBIA</option>
    <option value="51">GEORGIA</option>
    <option value="52">GERMANIA</option>
    <option value="53">GHANA</option>
    <option value="54">GIAMAICA</option>
    <option value="55">GIAPPONE</option>
    <option value="56">GIBILTERRA</option>
    <option value="57">GIORDANIA</option>
    <option value="58">GRECIA</option>
    <option value="59">GRENADA</option>
    <option value="60">GUERNSEY (Regno Unito)</option>
    <option value="61">HONG KONG</option>
    <option value="62">INDIA</option>
    <option value="63">INDONESIA</option>
    <option value="64">IRAQ</option>
    <option value="65">IRLANDA</option>
    <option value="66">ISLANDA</option>
    <option value="67">ISOLA DI MAN ( Regno Unito)</option>
    <option value="68">ISOLE FAROE</option>
    <option value="69">ISRAELE</option>
    <option value="70" selected>ITALIA</option>
    <option value="71">JERSEY (Regno Unito)</option>
    <option value="72">KAZAKISTAN</option>
    <option value="73">KENYA</option>
    <option value="74">KOSOVO</option>
    <option value="75">KUWAIT</option>
    <option value="76">LA REUNION</option>
    <option value="77">LAOS</option>
    <option value="78">LETTONIA</option>
    <option value="79">LIBANO</option>
    <option value="80">LIBIA</option>
    <option value="81">LIECHTENSTEIN</option>
    <option value="82">LITUANIA</option>
    <option value="83">LUSSEMBURGO</option>
    <option value="84">MACAO</option>
    <option value="85">MACEDONIA</option>
    <option value="86">MADAGASCAR</option>
    <option value="87">MALAWI</option>
    <option value="88">MALDIVE</option>
    <option value="89">MALESIA</option>
    <option value="90">MALI</option>
    <option value="91">MALTA</option>
    <option value="92">MAROCCO</option>
    <option value="93">MAURITANIA</option>
    <option value="94">MAURITIUS</option>
    <option value="95">MESSICO</option>
    <option value="96">MOLDAVIA</option>
    <option value="97">MONTENEGRO</option>
    <option value="98">MOZAMBICO</option>
    <option value="99">NAMIBIA</option>
    <option value="100">NIGER</option>
    <option value="101">NIGERIA</option>
    <option value="102>NORVEGIA</option>
    <option value="103">NUOVA ZELANDA</option>
    <option value="104">OLANDA</option>
    <option value="105">OMAN</option>
    <option value="106">PAKISTAN</option>
    <option value="107">PALESTINA</option>
    <option value="108">PANAMA</option>
    <option value="109">PARAGUAY</option>
    <option value="110">PERU'</option>
    <option value="111">POLONIA</option>
    <option value="112">PORTOGALLO</option>
    <option value="113">QATAR</option>
    <option value="114">REGNO UNITO</option>
    <option value="115">REP. DEL CONGO</option>
    <option value="116">REP. DOMINICANA</option>
    <option value="117">ROMANIA</option>
    <option value="118">RUSSIA</option>
    <option value="119">SAINT KITTS E NEVIS</option>
    <option value="120">SAINT LUCIA</option>
    <option value="121">SENEGAL</option>
    <option value="122">SERBIA</option>
    <option value="123">SEYCHELLES</option>
    <option value="124">SIERRALEONE</option>
    <option value="125">SINGAPORE</option>
    <option value="126">SIRIA</option>
    <option value="127">SLOVACCA,REP.</option>
    <option value="128">SLOVENIA</option>
    <option value="129">SPAGNA</option>
    <option value="130">SRILANKA</option>
    <option value="131">SUDAFRICA</option>
    <option value="132">SUDAN</option>
    <option value="133">SVEZIA</option>
    <option value="134">SVIZZERA</option>
    <option value="135">SWAZILAND</option>
    <option value="136">TAGIKISTAN</option>
    <option value="137">TAIWAN</option>
    <option value="138">TANZANIA</option>
    <option value="139">THAILANDIA</option>
    <option value="140">TOGO</option>
    <option value="141">TUNISIA</option>
    <option value="142">TURCHIA</option>
    <option value="143">UCRAINA</option>
    <option value="144">UGANDA</option>
    <option value="145">UNGHERIA</option>
    <option value="146">USA</option>
    <option value="147">UZBEKISTAN</option>
    <option value="148">VENEZUELA</option>
    <option value="149">VIETNAM</option>
    <option value="150">YEMEN</option>
    <option value="151">ZAMBIA</option>
    <option value="152">ZIMBABWE</option>
    </select></td><tr></tr>
    <td><input type="text" name='prefisso' id='prefisso' value='+39' size="5" readonly>/
    <input type="text" name='tel' onKeyPress="return goodchars(event,'0123456789')">

    </td>
    </tr>

    </table>
    </form>

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 © 2025 vBulletin Solutions, Inc. All rights reserved.