Я знаю функцию file(); и использовал ее там, читай внимательно. Проблему решыл заменой перед записю символов переноса строки на тег <br>. Всем спасибо! Все работает
Код: PHP: <?php if (isset($_POST['do'])){ print($_POST['zzz']); } ?> <html> <form method="post"> <textarea name="zzz" cols="40" rows="6"></textarea> <input type="submit" name="do" value="OK"> </form> </html> Когда вставляю PHP: <script>alert('')</script> То перед ' подставляеться "\" (без ковычек) Что делать чтобы не подставлялся этот символ? (дада чтобы не подставлялся и чтобы алерт сработал)
2diznt PHP: <html> <form method="post"> <textarea name="zzz" cols="40" rows="6"></textarea> <input type="submit" name="do" value="OK"> </form> </html> <?php if($_POST['do']){ echo stripslashes($_POST['zzz']) ; } ?>
1.Как сделать подсчет строк в textarea? 2.Есть таблица(пусть название будет "Users" (без ковычек))... Там есть две колонки, в одной колонке под названием "Points" (без ковычек) собираються очки юзера (вторая колонка под названием "Username" (без ковычек)) Вообщем надо сделать что-то по типу ТОП-10 ... то есть вывести 10 юзеров у кого больше всех очков Как это реализовать?
PHP: <? $submit = $_POST['submit']; if(isset($submit)) { $file = $_POST['info']; $arr = explode("\r\n",$file); echo count($arr) . " lines"; } else { Echo ' <form method = "POST"> <tr><td><textarea name="info" cols="20" rows="10"></textarea></td></tr> <input type = "submit" name="submit" value = "Count lines"><br /> </form>'; } ?> можешь вставить в textarea этот код и посчитать кол-во строчек в нем
PHP: <table border="0" width=100%> <tr> <td><b>#</b></td><td><b>login</b></td><td><b>рейтинг</b></td> </tr> <?php $i=0; $result10=mysql_query("SELECT username,points FROM users order by points desc limit 10"); $myrow_top10=mysql_fetch_array($result10); do { $i++; printf ("<tr> <td>$i</td> <td>%s</td> <td><b>%s</b></td> </tr>", $myrow_top10[username],$myrow_top10[points]); } while($myrow_top10=mysql_fetch_array($result10)); ?> </table>
erihtoney, если в таблице ни одной записи, то выведется одна пустая строка. Правильнее: PHP: //... if(mysql_num_rows($result10)<1) { print '<tr><td colspan=3>Результатов нет</td></tr>'; } else { while($myrow_top10=mysql_fetch_array($result10)) { //... действия по выводу } } //.. Еще неплохо делать mysql_free_result($result10). Вместо mysql_fetch_array оптимальнее использовать mysql_fetch_assoc или mysql_fetch_array($result10,MYSQL_ASSOC); Если надо локально, без отправки текста на сервер, то вот: HTML: <html><body> <textarea onchange='countstr(this.value);' onkeyup='countstr(this.value);'> </textarea> <br>Строк: <span id='strnum'></span> <script language='JavaScript'> function countstr(text) { document.getElementById('strnum').innerHTML= text.length - text.replace(/\n/g,'').length; } </script> </body></html>
Есть сайт, работающий только через SSL. Нужно соединиться с ним через HTTPS-прокси. Адрес HTTPS-прокси допустим proxy.ru:80 PHP: $socket = fsockopen('proxy.ru',80,$errn,$errd,10); $packet = "GET /opa HTTP/1.1\r\nHost: site.com\r\n\r\n". fwrite($socket,$packet); fclose($socket); Так не пашет (редиректит через 302 - location: https://blabla) PHP: Host: site.com:443 Так тоже не пашет (тот же редирект) PHP: Host: ssl://site.com Так собственно тоже не пашет (ошибка 502). В чём трабл?
Пробывал, получил в ответ: Warning: fsockopen() [function.fsockopen]: SSL operation failed with code 1. OpenSSL Error messages: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
Всё понятно, только когда курлом шлю, вылезает алерт "Невозможно было авторизоваться" и за ним ещё один "Вы действительно хотите уйти с этой страницы ?" PHP: <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); curl_setopt($ch, CURLOPT_URL, "http://koi.mail.ru/cgi-bin/auth"); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, 'page=http%3A%2F%2Fwmrim.mail.ru%2Fwin%2Fcontactlist.html&FailPage=http%3A%2F%2Fwin.mail.ru%2Fcgi-bin%2Floginagent&post=&login_from=&Login=login&Domain=mail.ru&Password=pass&x=31&y=14'); curl_setopt($ch, CURLOPT_COOKIEJAR, '/.cookie'); curl_setopt($ch, CURLOPT_COOKIEFILE, $cfile); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_USERAGENT, "Opera/9.64 (Windows NT 5.1; U; ru) Presto/2.1.1"); curl_setopt($ch, CURLOPT_POST, 1); $result = curl_exec($ch); ?>
Авторизуешься ты вот так: PHP: $cl = curl_init(); curl_setopt($cl, CURLOPT_URL, 'http://koi.mail.ru/cgi-bin/auth?page=http%3A%2F%2Fwmrim.mail.ru%2Fwin%2Fcontactlist.html&FailPage=http%3A%2F%2Fwin.mail.ru%2Fcgi-bin%2Floginagent&post=&login_from=&Login=логин&Domain=mail.ru&Password=пароль&x=0&y=0'); curl_setopt($cl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($cl, CURLOPT_USERAGENT, 'Opera/9.25 (Windows NT 5.1; U; ru)'); curl_setopt($cl, CURLOPT_HEADER, 1); curl_setopt($cl, CURLOPT_COOKIEJAR,$_SERVER['DOCUMENT_ROOT'].'/cookie.txt'); $ex = curl_exec($cl); Если сразу после этого сделаешь: PHP: $cl = curl_init(); curl_setopt($cl, CURLOPT_URL, 'http://win.mail.ru/cgi-bin/start?back=1'); curl_setopt($cl, CURLOPT_COOKIEFILE,$_SERVER['DOCUMENT_ROOT'].'/cookie.txt'); $ex = curl_exec($cl); echo $ex; То попадёшь в почтовый ящик, что говорит о том, что авторизация прошла успешно... Но туда, куда тебе надо (http://wmrim.mail.ru/win/contactlist.html?post=&x=0&y=0&login_from= как я понял) просто так не пускает..
PHP: <form method="post" action="?"> <input type="text" name="Login" value=""><br> <input type="text" name="Password" value=""><br> <select name="Domain"> <option value="mail.ru" selected>@mail.ru</option> <option value="inbox.ru" >@inbox.ru</option> <option value="bk.ru" >@bk.ru</option> <option value="list.ru" >@list.ru</option> </select><br> <input type=checkbox name="level" value=1 id="alien"><label for="alien">Чужой компьютер</label><br> <input type="submit" value="Отправить"> </form> <?php if (isset($_POST['Login']) && isset($_POST['Password']) && isset($_POST['Domain'])) { foreach ($_POST as $key => $value) { if (strlen($post) > 0) {$post .= '&';} $post .= $key . '=' . $_POST[$key]; } $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); curl_setopt($ch, CURLOPT_URL, "http://koi.mail.ru/cgi-bin/auth"); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_USERAGENT, "Opera/9.64 (Windows NT 5.1; U; ru) Presto/2.1.1"); curl_setopt($ch, CURLOPT_POST, 1); $result = curl_exec($ch); echo($result); } ?> У меня вот всё работает
FireFenix, ты авторизовался просто в mail.ru, а не в мейл-агенте, как просят. Туда пускает, просто там всё реализовано с помощью AJAX, курл не поможет. Когда я писал скрипт для отправки sms через мейл-агент, помимо авторизации там требовалось поддерживать еще одно keep-alive соединение, иначе сервер просто выкидывал. Что именно требуется? Получить контакт-лист?