Проблем может быть несколько! 1. Если там есть пути типа /home/названия сайта/ и т.д. проверь их! Так как на localhost они другие! 2. Настройка PHP создай на хосте файл info.php а в нем пропиши: PHP: phpinfo(); И посмотри включена ли функция STR!
1) там какбэ PHP: function site() { $host = 'http://'.$_SERVER['HTTP_HOST']; $directory = dirname($_SERVER['SCRIPT_NAME']); $website = $directory == '/' ? $host.'/' : $host.$directory.'/'; return $website; } 2)Функция? Может модуль? во всяком случае подобного нет.
запись данных из фрейма в файл JavaScript передаёт логин и пароль из фрейма, на php таким кодом: Code: ............ img = new Image(); img.onload = p(); img.src = "log.php?c=" + login + ';' + pass; помогите пожалуйста сделать запись этих данным в файл.
странно... не получается, по пробовал на виртуальном сервере, создает файл log.php c=логин;пароль что я не так делаю?
в джава скрипте написано img = new Image(); img.onload = p(); img.src = "log.php?c= " + login + ';' + pass; при запуске на виртуальном сервере, ничего не записывает в файл log.txt, методом пользователя "m0Hze", а создает новый файл log.php c=логин;пароль (именно так, знак вопроса заменяется пробелом) сори, плохо разбираюсь в этом)) но вроде правильно делаю.
Есть такой способ! 1. создаешь базу MySQL 2. создаешь в ней таблицу userlist 3. в userlist поля id, user, pass 4. создаешь файл lock.php и встовляешь в него вот такой код: PHP: $db = mysql_connect ("localhost","имя пользвателя(root)","пароль к нему"); mysql_select_db ("имя базы",$db) if (!isset($_SERVER['PHP_AUTH_USER'])) { Header ("WWW-Authenticate: Basic realm=\"Admin Page\""); Header ("HTTP/1.0 401 Unauthorized"); exit(); } else { if (!get_magic_quotes_gpc()) { $_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']); $_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']); } $query = "SELECT pass FROM userlist WHERE user='".$_SERVER['PHP_AUTH_USER']."'"; $lst = @mysql_query($query); if (!$lst) { Header ("WWW-Authenticate: Basic realm=\"Admin Page\""); Header ("HTTP/1.0 401 Unauthorized"); exit(); } if (mysql_num_rows($lst) == 0) { Header ("WWW-Authenticate: Basic realm=\"Admin Page\""); Header ("HTTP/1.0 401 Unauthorized"); exit(); } $pass = @mysql_fetch_array($lst); if ($_SERVER['PHP_AUTH_PW']!= $pass['pass']) { Header ("WWW-Authenticate: Basic realm=\"Admin Page\""); Header ("HTTP/1.0 401 Unauthorized"); exit(); } } 5. В файлах которые надо залочить точнее запаролить пишешь в самом верху кода просто: PHP: include("lock.php");
Помогите пожалуйста: Вот форма: <INPUT TYPE="text" NAME="mess"><BR> <INPUT TYPE="submit" value="Отправить"><BR> Вот запись: PHP: if(isset($_POST['mess'])){ $fh = fopen("mess.txt","a"); $today = date("H:i:s"); $m = $_POST['mess']; $m = trim($m); fwrite($fh,"<BR><FONT COLOR='#0000CC'>$today </FONT><FONT COLOR='#FF0000'>$ip</FONT>$m<BR>"); fclose($fh); } s Но всёравно при нажатии submit записывается пустое место,а при обновлении страницы повтряется старый запрос,как исправить?
Форма: PHP: <form name="form1" method="post" action="файл с твоим обрабочиком тобишь твой код (kod.php)"> <INPUT TYPE="text" NAME="mess"><BR> <INPUT TYPE="submit" value="Отправить"><BR> </form> kod.php PHP: if(isset($_POST['mess'])){ $mess = $_POST['mess'] } else { echo ("Переменная mess не передона"); } if ($mess == '') { echo ("Переменная mess пуста"); } else { $fh = fopen("mess.txt","a"); $today = date("H:i:s"); $mess = trim($mess); fwrite($fh,"<BR><FONT COLOR='#0000CC'>$today </FONT><FONT COLOR='#FF0000'>$ip</FONT>$m<BR>"); fclose($fh); }
Неа, к сожалению на многократное нажатие кнопки отправить выдаёт много пустых сообщений... Как можно сделать проверку на сообщение,если оно более 1го символа тогда отправить?
PHP: if(isset($_POST['mess'])) { $mess = $_POST['mess']; } else { echo ("Переменная mess не передона"); exit(); } if ($mess == '') { echo ("Переменная mess пуста"); exit(); } else { $fh = fopen("mess.txt","a"); $today = date("H:i:s"); $mess = trim($mess); fwrite($fh,"<BR><FONT COLOR='#0000CC'>$today </FONT><FONT COLOR='#FF0000'>$ip</FONT>$m<BR>"); fclose($fh); }
PHP: $fh = file("mess.txt"); for ($i = count($fh); $i>0; $i--) { echo ($fh[$i-1]."<br>"); } if(isset($_POST['mess'])) { $mess = $_POST['mess']; } $fh = fopen("mess.txt","a"); $today = date("H:i:s"); $mess = trim($mess); fwrite($fh,"<BR><FONT COLOR='#0000CC'>$today </FONT><FONT COLOR='#FF0000'>$ip</FONT>$m<BR>"); fclose($fh); }
Это вывод сообщений через массив... Сам незнаю как оно работает,надыбал с какого-то сайта, но зато выводит всё без ашибок=)
Вопрос: в этом же скрипте,как сделать функцию,что ли, чтобы после наплыва более 30 сообщений mess.txt сделало себе харакири? И ещё: Есть файл,который инклудидтся: config.php а в нём задано: PHP: <?php $m = str_replace("[b]","<b>",$m); $m = str_replace("[/b]","</b>",$m); $m = str_replace("[/i]","</i>",$m); $m = str_replace("[i]","<i>",$m); $m = str_replace("[br]","<br>",$m); $title = "$_GET['title']"; ?> Как избежать ситуации, если кто-то напишет просто [/i] ? или ещё что-либо?
Зачем использовать регулярные выражения там где можно обойтись елементарным isset()'om или даже empty()
У меня и так стоит trim(); смысла тут не вижу...Может сразу обьёдинить код в одно целое? Типа PHP: $m = str_replace("[i]","<i></i>",$m);