вобщем надо сделать выпадающее меню выбора доменных имён. положим эту штуку вставляю в форму ниже <select name=zone> <option value="ru">.ru</option> <option value="su">.su</option> <option value="com">.com</option> <option value="eu">.eu</option> <option value="org">.org</option> <option value="net">.net</option> <option value="biz">.biz</option> <option value="info">.info</option> <option value="tv">.tv</option> <option value="spb.ru">.spb.ru</option> <option value="msk.ru">.msk.ru</option> </select> потом $domain=$domain.'.'.$zone; соответсвенно но хер - обрабатывается данная только которая прописана в <input type="text" name="domain">, а name=zone в игноре помогите разобраться! PHP: <? require_once("whois.php"); ?> <html> <head> <title>скрипт WHOIS - пример использования</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"></head> <body> <form method="get"> <input type="text" name="domain"><input type="submit" value="WHOIS"> </form> <hr> <? if(isset($_GET["domain"]) && strlen($_GET["domain"])>0) { $target=$_GET["domain"]; $whois=new whois(); $whois->zonelookup($target); if($whois->ERROR==0) { if(is_array($whois->RAWINFO) && count($whois->RAWINFO)>7 && $whois->FOUND==1) { echo("<p><b>".$target."</b><br>IP: ".$whois->IP."</p><pre>"); foreach($whois->RAWINFO AS $str) { echo($str."\n"); } echo("</pre>"); echo("<p>DNS INFO:</p><pre>"); foreach($whois->DNSINFO AS $str) { echo($str."\n"); } echo("</pre>"); }else { echo("<p>".$target." <b>Free</b></p>"); } }else { echo("<p>Requirest is fail</p>"); } } ?> <hr> <center>Copyright © 2004-2005 by <a href="http://pws.ru/">PWS.RU</a></center> </body> </html> </body> </html>
$domain=$domain.'.'.$zone; получается так site.ru передача соотвественно такая: domain=site&zone=ru при echo $domain=$domain.'.'.$zone; всё нормально показывает, но вот скрипт выше игнорирует $domain=$domain.'.'.$zone; почему-то и работает по переданному только domain= странно, да?
PHP: <? require_once("whois.php"); ?> <html> <head> <title>скрипт WHOIS - пример использования</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"></head> <body> <form method="get"> <input type="text" name="domain"> <select name=zone> <option value="ru">.ru</option> <option value="su">.su</option> <option value="com">.com</option> <option value="eu">.eu</option> <option value="org">.org</option> <option value="net">.net</option> <option value="biz">.biz</option> <option value="info">.info</option> <option value="tv">.tv</option> <option value="spb.ru">.spb.ru</option> <option value="msk.ru">.msk.ru</option> </select> <input type="submit" value="WHOIS"> </form> <hr> <? $domain=$domain.'.'.$zone; echo $domain; // высвечивает правильно, но сучка обрабатывает только $domain без .'.'.$zone;!!!!!! if(isset($_GET["domain"]) && strlen($_GET["domain"])>0) { $target=$_GET["domain"]; $whois=new whois(); $whois->zonelookup($target); if($whois->ERROR==0) { if(is_array($whois->RAWINFO) && count($whois->RAWINFO)>7 && $whois->FOUND==1) { echo("<p><b>".$target."</b><br>IP: ".$whois->IP."</p><pre>"); foreach($whois->RAWINFO AS $str) { echo($str."\n"); } echo("</pre>"); echo("<p>DNS INFO:</p><pre>"); foreach($whois->DNSINFO AS $str) { echo($str."\n"); } echo("</pre>"); }else { echo("<p>".$target." <b>Free</b></p>"); } }else { echo("<p>Requirest is fail</p>"); } } ?> <hr> <center>Copyright © 2004-2005 by <a href="http://pws.ru/">PWS.RU</a></center> </body> </html> </body> </html>
да лан, и без кавычек пашет. короче решил: $target=$target.$zone; а в option value везде поставил точки (<option value=".ru">.ru</option> ) и только при этих 2-х условиях работает. чудеса блин. Вопрос#2 <head> <script type="text/javascript"> <!-- function myPopup() { window.open( "http://mysite/index.php", "myWindow", "status = 1, height = 300, width = 300, resizable = 0" ) } //--> </script> </head> <body> <form method="GET" action="http://mysite/index.php"> <input type="text" name="domain"> <input type="button" onClick="myPopup()" value="ok"> </form> </body> если запустить откроется конечно красивое маленькое окошечко, но переменные не передаются! action="http://mysite/index.php"> - не работает. Нахрен тогда джаваскрипт даёт такую фичу, если тупо открывает окно заданное в хеде window.open?! и нихера не передаёт переменные?! Это реально хератень жабаскрипта, или я парю и вопрос передачи переменных через форму в джава окно по другому решается?!
ты паришь. у тебя не сабмит, а просто баттон. соответственно сам по себе он из формы брать ничего не будет. поэтому [js] function myPopup() { domain=document.getElementById("domain").value; url="http://mysite/index.php?domain="+domain; window.open( url, "myWindow", "status = 1, height = 300, width = 300, resizable = 0" ) }[/js] ну или если нравится в одну строку, то [js]function myPopup() { window.open( "http://mysite/index.php?domain="+document.getElementById("domain").value, "myWindow", "status = 1, height = 300, width = 300, resizable = 0" ); }[/js] только учти, что getElementById берет элемент по его Id а не по имени, поэтому добавь id к инпуту
дык пользователь сначала вводит в <input type="text" name="domain"> свой домен, а потом эта переменная передаётся в файл. как тут айди автоматом херачить?
а... вообще не о том говорю... Джава понимаю крайне туго. Можно популярнее что за айди к инпуту нужно ставить и как
<input name="domain" id="domain"> фишка в том, что id должен быть уникальным, а name - не обязательно. Если нужно выбрать несколько сгруппированных элементов, то getElementsByName("имя"), а если нужен один-единственный элемент, то getElementById("айди") и не путай Java и javascript пожалуйста. Тебе все равно, а меня раздражает
Спасибо! а там у меня ещё есть переменная zone как её правильно вставить в ..........?domain="+document.getElementById("domain").value, и ещё - у меня почему-то открывается два окна при сабмите - одно джаваскрипт, другое обычное..
zone это select? тогда так: [js]zone=document.getElementById('zone').options[document.getElementById('zone').selectedIndex()].value ..........?domain="+document.getElementById('domain').value+'&zone='+zone"[/js] В данном случае document.getElementById("zone").selectedIndex() находит номер выбранной опции, а document.getElementById("zone").options[номер].value - значение опции по этому индексу. Будь осторожен с кавычками а два окна у тебя открываются потому что сабмит это сабмит. Он сабмитит форму в скрипт, указанный в action. А зачем тебе сабмит вообще? точнее что бы ты хотел вместо
<input type="button" onClick="myPopup()" value="ok"> а сабмит это <input type="submit" value="ok"> Или ты хочешь чтобы окно с формой закрывалось при этом?