Feksess пожалуйста, прежде чем ЧТО-ЛИБО делать дальше - скачайте хоть какой нибудь учебник и прочитайте как работает HTTP протокол, язык разметки HTML, как выглядят те или иные данные. http://phpfaq.ru/start http://phpfaq.ru/na_tanke http://lib.ru/WEBMASTER/rfc2068/ http://htmlbook.ru/html/img
Здраствуйте у меня такой вопрос ? Вот код PHP: <form method="GET" action="/cgi-bin/form_handler.cgi"> Введите Ваше имя: <input type="text" name="name"> <br> <input type="submit" name="okbutton" value="OK"> </form> Получается как то вот так. а�аВаЕаДаИб�аЕ а�аАб�аЕ аИаМб�: что то не так в кодировке??
Помогите оптимизировать код ) Задача - найти папку backup на сайтах.... Большое время выполнения.... PHP: <?php include('dbase.php'); $result = mysql_query("select id,dom_name from dbase.domainbase where done <> 1 limit 1;"); $err = mysql_error(); if (empty($err)) { while($row = mysql_fetch_array($result)) { $site = strtolower($row['dom_name']); $url = "http://".$site."/backup/"; $ip = gethostbyname($site); if(ip2long($ip) == -1 || preg_match("/.*\.[a-zA-Z]{2,3}$/",$site) == 0 ) { } else { $Headers = @get_headers($url); if(strpos($Headers[0],'200')) { echo '<a target=new href='.'http://'.$site.'/backup'.'>'.'http://'.$site.'/backup/'.'</a><br>'; $up_date = mysql_query("UPDATE dbase.domainbase SET comment = 'yes' WHERE id='".$row['id']."'"); mysql_query($up_date); } else{ $up_date = mysql_query("UPDATE dbase.domainbase SET comment = 'no' WHERE id='".$row['id']."'"); mysql_query($up_date); } $up_date = mysql_query("UPDATE dbase.domainbase SET done = '1' WHERE id='".$row['id']."'"); mysql_query($up_date); } } } ?> Нужны ли комментарии к коду?
PHP: <? session_start(); include ("dbconnect.php"); $id = !empty($_POST['user_login'])?$_POST['id']:NULL; $pass = !empty($_POST['user_pass'])?$_POST['pass']:NULL; if(!preg_match("/^[0-9]{1,100}$/", $id)) { header("Location: login.php?mod=no"); //Такой логин с паролем не найдены в базе данных } else { if(!preg_match("/^[\w0-9]{6,20}$/", $pass)) { header("Location: login.php?mod=no"); //Такой логин с паролем не найдены в базе данных } else { $sql = mysql_query( "SELECT `id` FROM `user` WHERE `id`='$id' AND `pass`='$pass' LIMIT 1"); if (mysql_num_rows($sql) == 1) { $row = mysql_fetch_assoc($sql); $_SESSION['id'] = $row['id']; header("Location: login.php"); } else { header("Location: index.php?mod=nologin1"); //Такой логин с паролем не найдены в базе данных } } } ?> переехал на новый хостинг и стала возникать ошибка Warning: Cannot modify header information - headers already sent by (output started at /home/domains/public_html/dbconnect.php:17) in /home/domains/public_html/action.php on line 14 штоза байда? как быть?
PHP: <? $dbhost = "localhost"; $dbname = "name"; $dbuser = "user"; $dbpass = "pass"; $link = mysql_connect($dbhost,$dbuser,$dbpass); mysql_select_db($dbname,$link); ?>
qaz, после header("Location: ...) ставь exit; допиши строчку mysql_select_db($dbname,$link) or die(mysql_error());
Gifts, пустые строки не передаются, там скорее всего ошибка в подключении(localhost скорее всего не доступен на сервере как адрес сервера)
bad_boy, английским языком написано: Code: Warning: Cannot modify header information - headers already sent by (output started at /home/domains/public_html/dbconnect.php:17) in /home/domains/public_html/action.php on line 14 Это значит, что заголовки уже нельзя изменить (добавить к ним Location), т.к. уже был вывод данных в скрипте dbconnect.php на строке 17. Любой выведенный символ, в т.ч. пробел, перенос строки перекрывает возможность изменения заголовков скриптом.
mailbrush, я понимаю, что это значит. Печатать мне не хочется уже, буду копипастить. Залил скрипты qaz'а себе на денвер: Закомментировал: результат: Warning'и у него отключены, вот и всё.
1. Были бы отключены - не вываливался б Warning. 2. Была бы проблема с коннектом к БД - вывалилась бы соответствующее предупреждение, как у тебя. Вывод - дело не в коннекте к БД. Добавь лишний пробел к dbconnct.php и укажи правильную информацию для коннекта к БД - будет ситуация точно такая же, как у qaz'a. Решение, как уже было сказано, - убрать все символы после "?>" в dbconnect.php.
bad_boy невыведенные ошибки (читать отключен вывод ошибок) как раз-таки не влияют на работу функции header(). Наличие же неудаленных непечатных символов (пробелы, переносы строк, табуляция, utf8 символы) приводят к принудительной отправке заголовков. Можете поэкспериментировать добавив к вашему решению несколько пустых строк в конце.
mailbrush, Gifts, my bad, я то думал он скопировал весь файл и заканчивается он на '?>' и что вы говорите вообще о пустых строках после mysql_* функций и до '?>'.
нужно, авторизоватся на сайте курлом, но на сайте стоит какаято защита и я нискакого хостинга немогу к сайту подключится, ни через курл ни через файл гет контентс, што можно сделать в такой ситуации?
qaz не можете подключиться или сайт не отдает страницу? PHP: $site = 'somesite.ru'; $sock = fsockopen($site, 80); if ($sock) {echo 'Сайт доступен<br />';} else {echo 'Cайт недоступен для коннекта'; die();} fclose($sock);