Просмотр полной версии : [php] Новичкам: задаем вопросы
замени на
<form name="form1" method="post" action="./action.php">
бред ... при пустом или не существующем action данные посылает на этот же файл.... тоесть сам насебя ...
бред ... при пустом или не существующем action данные посылает на этот же файл.... тоесть сам насебя ...
Мы отправляем POST на сам файл index.php где выполняеться скрипт
можно написать как
<form action="index.php" method="post" enctype="application/x-www-form-urlencoded" name="form1">
Иль
<form action="" method="post" enctype="application/x-www-form-urlencoded" name="form1">
Вот скажи где бред? если нам надо оптавить запрсо на другой адрес тогда и пишим в action адрес, а если нету такой не обходимости, то мы спокойно можем оставить его пустым. ИЛЬ я где то не прав?
Mishatko
17.09.2008, 02:14
Помогите сэкономить время.
1. есть файл вида
логин1@бла-бла.ру
логин2@бла.ру
задача получить результат
логин1
логин2
т.е. отсечь собаку и всё после неё.
2. есть файл в котором много строк вида
мыло_хэш_пароль
мыло_хэш
задача: удалить строки где пароль не содержится.
Буду благодарен за помощь.
Mishatko
1.
<?
$file = file('file.txt');
foreach ($file as $c=>$x){
$f = explode('@',$file[$c]);
echo $f[0];
}
?>
2.
<?
# тут в роли разделителя служит двоеточие
$file = file('file.txt');
$m = fopen('file.txt','w');
foreach ($file as $c=>$x){
$f = explode(':',$file[$c]);
if (strlen($f[2])>0) fwrite($m, $f[2]."\r\n");
}
?>
Кодирование примитивно. Везде используется base64_decode.
Мотаем в самый конец файла, до выражения $_D=strrev('edoced_46esab');
Сие означает, что будет использоваться функция base64_decode (перевёрнутое название).
Далее, видно, что этой функцией будет распакован маленький отдельный кусочек и будет выполнен. После распаковки видно (код я опущу, любопытный читатель распакует его самостоятельно), что весь распакованный код выполняется командой eval. Я пошёл по простому пути и прямо в php заменил eval на echo.
Получился следующий код:
Результат - распечатанный листинг.
// KOOBI R7 - CMS - PORTALSOFTWARE(c) DREAM4(r)
P.S. Ход рассуждений строился так, чтобы любой подготовленный читатель, обладающий интерпретатором, мог самостоятельно повторить чудо распаковки.
В случае затруднений могу дать дополнительную информацию.
Если можно дайте дополнительную информацию
Как получить полный путь?
1)таблица
category_id | page_id
0 | 1
2) таблица
cat | sub
0 | 4
3) таблица
category_id | cat_name
0 | категория
4 | Субкатегория
4) таблица
page_id | page_name
1 | Страница1
Категория -> Субкатегория-> Страница1
как вывести главную кат понятно вот как суб не понимаю...
++Norton++
17.09.2008, 16:12
Немного не понял. Нужно просто вывести sub из таблицы 2? Если так, то:
SELECT * FROM table2 WHERE sub>=0;
DIAgen ну прально .. а еси можно и так и так .. зачем он ему сказал заменить ?
смотри внимательно ... он ему говорит в файле в файл action.php
заменить
<form name="form1" method="post" action="">
на
<form name="form1" method="post" action="./action.php">
Немного не понял. Нужно просто вывести sub из таблицы 2? Если так, то:
Нужно вывести путь :
Категория -> Субкатегория-> Страница1
суб категорий может быть скок угодно
как я понял решать это надо через рекурсию
Если можно дайте дополнительную информацию
Написал пошаговую инструкцию и результат выполнения.
http://slil.ru/26154441
хотел запустить скрипт с сокетами, но при подключении выдал ошибку сокетов 136038484
в гугле ничего не нашёл((
ос debian, PHP 5.2.0
счас копаюсь в конфигах, если знаете в чём трабла подскажите плз
Есть код из класса:
/**
* Устанавливает Cookie в браузер(имя, значение, время в часах)
*/
public function setCookie($name,$param,$hours) {
if(setcookie($name,$param,time() + 3600 * $hours))
return true;
else
return false;
}
и вот код использующий функцию:
<?php
error_reporting(E_ALL);
...
$core->show('Текст'); //выводит на экран строку
$core->setCookie('name','test',1); //устанавливает кукис. Проверял, все ок, кука на месте.
?>
По идее все заголовки, должны быть переданы до любого вывода информации, так?
Следовательно PHP должен был написать ошибку, но этого не происходит.
Стало и интересно, в чем же причина.
ChaaK, может там какой-то хитрожопый класс, который выводит строку както вконце? либо такие настройки сервера(чего только не придумают..)
Немого не понимаю разницу между mysql_connect и mysql_pcconnect. Что и где лучше использовать?
2mr.The этот класс писал я и ничего там интересного нет
Самый простой способ понять - это проверить на практике. Например так: <?php
for ($i=0;$i<=1000;$i++){
$link = mysql_connect("localhost", "login", "pass")
or die("Could not connect: " . mysql_error());
mysql_close($link);}
?> а затем так <?php
for ($i=0;$i<=1000;$i++){
$link = mysql_pconnect("localhost", "login", "pass")
or die("Could not connect: " . mysql_error());
mysql_close($link); //функция в данном случае здесь бесполезна, вставлена для демонстрации того, что соединение с бд ей не закрывается
}
?> Во втором случае скрипт отработает значительно быстрее т.к. открываться будет лишь одно соединение с бд , а в первом 1000. Но при использовании постоянного соединения с бд всегда нужно помнить о лимите возможных одновременно открытых соединениях (mysql.max_persistent = -1) иначе можно получишь "too many connections".
Люди,подскажите такую весчь,мне нужно зменить текст,только чтобы заменилось все между / и / вместе из ети ми же / / на то что указано,через какую ф-цыю ето можно осушествить,плиз,подскажат е на примере....
http://de2.php.net/preg_replace
Я же попросил,примером..... я просто не оч пойму как тут ето сделать в preg_replace, напишите кто нить пример чтобы было именно с заменой содержимого место / и /....плиз....
$string = "6543214 /lalsakdsakd /123456";
$pattern = "/\/(.*?)\//";
$replace = "";
echo preg_replace($pattern, $replace, $string);
Mixon
ну типо того:
$text = '/Превед медвед/'; // Текст в котором будет заменять
$in = 'Медвед'; // То что будем заменять
$out = 'Зайчег'; //На что будем заменять
$text = preg_replace('#'.$in.'#i', $out, $text);
echo $text;
В результате получим /Превед зайчег/
не тестил, поэтому можт чёто не работает...но принцип работы я думаю понял)
Пасибо,мне уже Kaimi ответил,уже все пашет,ну и тебе спс,попробуем,хотя твой вареант есче мне дуплить надо))он чуть твой сложнее....
как сдампить php ошибки в лог файл?
Вида:
Parse error: syntax error, unexpected T_STRING in *** on line 5
как сдампить php ошибки в лог файл?
Вида:
<?php
function error_log2f($errno, $errstr)
{
$f = fopen("error.log", "a");
fputs($f, "<b>Error:</b> [$errno] $errstr\n");
fclose($f);
}
set_error_handler("error_log2f");
echo ($test);
sadsa
?>
плюсег ;)
upd свою ошибку понял
как сдампить php ошибки в лог файл?
Вида: Никак.
Parse error не дампятся.
Смотри лог ошибок апача.
astrologer
18.09.2008, 20:26
NuR, почитай вот это: http://dklab.ru/lib/PHP_CodeFilter/.
Можно ли установить бан на IP через .htaccess файл?
Если да, то какого вида должна быть строка...
Можно ли установить бан на IP через .htaccess файл?
Если да, то какого вида должна быть строка...
<Limit GET POST>
order allow,deny
deny from 123.123.123.123
allow from all
</Limit>
хотя это к пхп как то не относиться....
Есть группа радио элементов:
<input type="radio" name="radio1" value="no" checked>Все
<input type="radio" name="radio1" value="1">Покупка
<input type="radio" name="radio1" value="2">Продажа
<input type="radio" name="radio1" value="3">Аренда
При наджатии на кнопку submit попадаем на эту же страничку, как сделать так, чтобы checked был там, где был выбран элемент формы?
Есть группа радио элементов:
<input type="radio" name="radio1" value="no" checked>Все
<input type="radio" name="radio1" value="1">Покупка
<input type="radio" name="radio1" value="2">Продажа
<input type="radio" name="radio1" value="3">Аренда
При наджатии на кнопку submit попадаем на эту же страничку, как сделать так, чтобы checked был там, где был выбран элемент формы?
надо делать примерно такой код
<?php
$fields = array();
$fields[1] = array("value" => "1", "text" => "Все");
$fields[2] = array("value" => "2", "text" => "Покупка");
$fields[3] = array("value" => "3", "text" => "Продажа");
foreach ($fields as $select) {
$var = @$_POST["radio1"];
$selected = ($select["value"] == $var) ? "checked" : "";
echo '<input type="radio" name="radio1" value="' . $select["value"] . '"' . " " .
$selected . '>' . $select['text'];
}
?>
надо делать примерно такой код
<?php
$fields = array();
$fields[1] = array("value" => "1", "text" => "Все");
$fields[2] = array("value" => "2", "text" => "Покупка");
$fields[3] = array("value" => "3", "text" => "Продажа");
foreach ($fields as $select) {
$var = @$_POST["radio1"];
$selected = ($select["value"] == $var) ? "checked" : "";
echo '<input type="radio" name="radio1" value="' . $select["value"] . '"' . " " .
$selected . '>' . $select['text'];
}
?>
Спасибо! Такой пример видел. а нельзя как нить попроще сделать? :confused:
можно пользоваться сматри, там все через плугины реализованно, но основная идею такая же. если не охото мучиться то можно например куку втыкать при сабите формы со значением выбранной радиобоксы, а потом яваскриптом заново выставлять выбранное в прошлый раз поле, но это имхо как то извращенчески :d
switch($_POST['radio1'])
{
case 1: $b = 'checked'; break;
case 2: $c = 'checked'; break;
case 3: $d = 'checked'; break;
default: $a = 'checked';
}
<input type="radio" name="radio1" value="no" <?=$a?>>Все
<input type="radio" name="radio1" value="1" <?=$b?>>Покупка
<input type="radio" name="radio1" value="2" <?=$c?>>Продажа
<input type="radio" name="radio1" value="3" <?=$d?>>Аренда
О нет, только не смарти!
NuR, Doom123, спасибо!
$result = mysql_query ("SELECT * FROM `base` ORDER BY `id` ASC");Как сделать так, чтобы выборка происходила в случайном порядке? :confused:
Есть ABC, есть DESC, а есть что то вроде shuffle?
m0nsieur
19.09.2008, 15:16
$result = mysql_query ("SELECT * FROM `base` ORDER BY `id` ASC");Как сделать так, чтобы выборка происходила в случайном порядке? :confused:
Есть ABC, есть DESC, а есть что то вроде shuffle?
А не проще будет массив с результатом случайным образом перемешать?
P.S. Хотя если важна скорость, то стоит поискать другое решение.
Подскажи, как?
$result = mysql_query ("SELECT * FROM `base`");
for ($i = 0; $i < 2; $i++) {
$row = mysql_fetch_array ($result);
echo $row["opis"].'<br />';
}
m0nsieur
19.09.2008, 15:34
Хотя что-то не просто получается =/ свою функцию сортировки городить придется через usort() иначе никак..
P.S. Попробуй ORDER BY RAND()
У меня вроде сработало и не надо выходной массив сортировать как я в начале сказал =)
m0nsieur! Отличное решение! Спасибо!
подскажите как на php прочитать текстовый файл и записать из него слово в массив.
если есть код, напишите, плз.
$massiv=file("file.txt");
http://php.net/manual/en/function.file.php
Mishatko
19.09.2008, 20:56
Есть текстовый файл, где содержатся строки двух видов:
мыло:хеш:пароль
мыло:хеш
Задача: записать все строки содержащие пароль в один текстовый файл, а строки без паролей в другой текстовый файл.
может кто сделать такую отправку сообщений icq использующий этот сервис http://www.icq.com/people/webmsg.php ???
Mishatko
я похожий тебе уже писал ..
<?
# тут в роли разделителя служит двоеточие
$file = file('file.txt');
$m = fopen('file.txt','w');
$mv = fopen('file1.txt','w');
foreach ($file as $c=>$x){
$f = explode(':',$file[$c]);
if (strlen($f[2])>0) fwrite($m, $file[$c]."\r\n");
else fwrite($mv, $file[$c]."\r\n");
}
?>
==========================================
может кто сделать такую отправку сообщений icq использующий этот сервис http://www.icq.com/people/webmsg.php ???
я могу ..
пиши Лс
Mishatko
19.09.2008, 21:56
Спасибо 159932, в прошлый раз при парсинге выводились только пароли, а мне нужны были строки целиком. Видимо непоняли друг друга. Я хоть в пехопе и разбираюсь маленько, но до твоих знаний мне ещё далеко. Ещё рах спасибо за оперативную помощь. С таких как ты надо брать пример!
Только я ."\r\n" удаляю. Они доп. перенос строк дают, в моём случае это излишество.
дайте плз ссылочки на материалы по "безопасному" кодингу на php...
дайте плз ссылочки на материалы по "безопасному" кодингу на php...
http://forum.antichat.ru/thread54355-PHP.html
http://forum.antichat.ru/thread58315-PHP.html
http://forum.antichat.ru/thread7990-PHP.html
http://forum.antichat.ru/thread7995-PHP.html
http://forum.antichat.ru/thread7978-PHP.html
http://forum.antichat.ru/thread7160-PHP.html
http://forum.antichat.ru/thread7126-PHP.html
пользуемся поиском)
А конкретнее что? В мануале все есть: php.net
дайте плз ссылочки на материалы по "безопасному" кодингу на php...
phpfaq.ru - читать весь
xxxxxxxxxxxxxxx
20.09.2008, 01:53
если я ввожу с формы 4 параметра как мне по ним нарисовать 2 линии?
$x1 =(int)$_POST ["x1"];
$y1 =(int)$_POST ["y1"];
$x2 =(int)$_POST ["x2"];
$y2 =(int)$_POST ["y2"];
если я ввожу с формы 4 параметра как мне по ним нарисовать 2 линии?
$x1 =(int)$_POST ["x1"];
$y1 =(int)$_POST ["y1"];
$x2 =(int)$_POST ["x2"];
$y2 =(int)$_POST ["y2"];
http://ru.php.net/ImageLine
тут есть куча примеров и инфы
первый пример какраз для тебя ;)
cremator (c)
20.09.2008, 02:15
$img =imagecreatetruecolor(320 , 240 ); $ink = imagecolorallocate($img, 255 , 255 , 255 ); imageline($img,$x1 ,$y1 ,$x2, $x2,$ink); imagepng($img); imagedestroy($img); в общем виде
Сообщение от xxxxxxxxxxxxxxx
если я ввожу с формы 4 параметра как мне по ним нарисовать 2 линии?
Насколько я понял линия в данном контексте - отрезок исходящий из точки А в точку Б. Для обозначения точек в 2-мерной координатной сетке (монитор напрмер) используется 2 координаты (x, y). Итого 2*2=4 координаты (x1, y1, x2, y2). Исходя из этого нарисовать 2 линии с использованием всего 4 координат нельзя даже теоретически =). Сори за оффтоп, но ИМХО вопрос задан не совсем корректно.
[x26]VOLAND
20.09.2008, 07:33
Если в этой html странице указаны абсолютные адреса картинок, то выводиться будет без проблем. Если относительные, придётся с помощью регулярки добавить во все атрибуты src тегов img адрес сайта, гден эти картинки расположены.
mouse.pro
20.09.2008, 08:21
Попробуй инклуд
Попробуй инклуд
А смысл? Вообщето браузер парсит html и скачивает рисунки по ссылкам из тегов. Он распознает абсолютные(т.е http//ссылка на картинку) и относительные(/адрес картинки на сайте).
В данном случае ты скачиваешь html с относительными ссылками, браузер парсит html, находит ссылку, но картинки не существует. Поэтому чтобы "скачать" картинки воспользуется оператором preg_replace()
а почему не открыть сайт во фрейме?
Никак.
Parse error не дампятся.
Смотри лог ошибок апача.
Может я не правильно понял вопрос, но как же set_error_handler?
(просто недавно делали дополнение, что все ошибки php заносяться в бд, и еденичные копии ошибок(без повторений) отсылался на емейл и мобильный номер)
Nightmarе
21.09.2008, 04:08
Можно ли через .htaccess отследить конкретное слово например идущие в Post и Get запросах?
К примеру вот так:
http://site.ru/script.php?s=ewrwer&t=fvvvv&d=ttt
То есть если в GET запросе есть "ewrwer" значит какое то действие, там редирект или блокируем доступ.
Именно через .htaccess, а не в самих скриптах.
Через Get можно. Используй RewriteRule.
нужен скрипт который найдёт в строке часть текста и удалит полностью строку
пример:
xxxx zzzz uyyyyy
zzzzzzzzzzzzzzz
aaaaaaaaaaaaayyy
xasddddssss
xxxxxxyyyyyxxasd
sdsdayyysdasda
нужно чтобы удалилились строки содержащие 5 y
[x26]VOLAND
21.09.2008, 08:35
strpos в помощь...
На скорую руку можно так: <?
$text_arr = file('text.txt');
$fh = fopen ('text_clean.txt', 'w');
foreach ($text_arr as $value) {
if (!strpos($value, 'yyyyy')) {
fwrite ($fh, $value);
}
}
fclose($fh);
?>
text.txt - файл со строками для чистки.
text_clean.txt - после чистки.
На скорую руку можно так: <?
$text_arr = file('text.txt');
foreach ($text_arr as $value) {
if (!strpos($value, 'yyyyy')) {
$text_arr_clean[] = $value;
}
}
print_r ($text_arr_clean);
?>
text.txt - файл со строками для чистки.
я работаю с большими списками,мне нужно чтобы файл чистился, а не выводил оставшиеся строки.
я работаю с большими списками,мне нужно чтобы файл чистился, а не выводил оставшиеся строки.
переписал, код там же =)
Помогите с пэхой.
Код
echo "<input type=\"text\" readonly=\"readonly\" size=\"0\" value=\"$result\">";
$result - будет выводить число, как мне его засунуть в <div> или <font>?
И как мне его перенести на строчку выше? За пределы <?php ... ?> выводить нельзя
Вот полный код
Код
<form action="counter.php" method="post">
<input type="hidden" name="incr" value="1" />
<input type="submit" id="submit" value="add" />
<?php
$file = 'counter.txt';
$handle = fopen($file,"r");
if($handle)
{
$result = (int)fread($handle, 100);
echo "<input type=\"text\" readonly=\"readonly\" size=\"0\" value=\"$result\">";
fclose($handle);
}
?>
</form>
BlackSun
21.09.2008, 12:36
echo "<div><input type=\"text\" readonly=\"readonly\" size=\"0\" value=\"$result\"></div>";
?
echo "<div><input type=\"text\" readonly=\"readonly\" size=\"0\" value=\"$result\"></div>";
Не показывает
Есть к примеру my@mail.ru
как мне с помощью preg_match выводить доменое имя одельно и хост одельно без сабаки(@) ???
Икак проверять поля вода на то что они пустые или не пустые?
echo '<div><input type="text" readonly="readonly" size="0" value="'.$result.'"></div>';
Есть к примеру my@mail.ru
как мне с помощью preg_match выводить доменое имя одельно и хост одельно без сабаки(@) ???а нах прегматч ?
# да прибудет с вами сила :D
$m = explode('@', $str);
$name = $m[0];
$serv = $m[1];
Nightmarе
21.09.2008, 13:44
Через Get можно. Используй RewriteRule.
Так всё таки можно ли пример?
а нах прегматч ?
# да прибудет с вами сила :D
$m = explode('@', $str);
$name = $m[0];
$serv = $m[1];
Мне это в институт надо! И надо чтоб именно через preg_match было?
Мне это в институт надо! И надо чтоб именно через preg_match было?хуяссе препод извращенец :D
<?
preg_match('/([a-z0-9-_\.]{1,25})@([a-z0-9-_]{1,25}\.[a-z\.]{2,6})/i',$str,$m);
$name = $m[1];
$serv = $m[2];
?>
>>Икак проверять поля вода на то что они пустые или не пустые?
if ($str == '') echo "хахаха !!! поле опустело !!";
преподу +++. побольше б таких
BlackSun
21.09.2008, 14:38
хуяссе препод извращенец :D
>>Икак проверять поля вода на то что они пустые или не пустые?
if ($str == '') echo "хахаха !!! поле опустело !!";
if (empty($str)) echo "0_o";
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>urok PREG_MATCH</title>
</head>
<?php
$s="primer@rambler.ru";
preg_match('/([a-z0-9-_\.]{1,25})@([a-z0-9-_]{1,25}\.[a-z\.]{2,6})/i',$s,$ma);
$host=$ma[1];
$prov=$ma[2];
echo("Host=$host");
echo("Domen=$prov");
?>
<body>
</body>
</html>
Почему не работает?
Так всё таки можно ли пример?
Не заметил сразу =)
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} 666
RewriteRule ^index\.php$ / [L,R=404]
так например, если в гет запросе к index.php присутствует 666 (тоесть если будет 6666, 66666 и т.д. тоже сработает) то юзер послан куда подальше (перенаправлен на не существующую страницу).
Nightmarе
21.09.2008, 16:32
Не заметил сразу =)
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} 666
RewriteRule ^index\.php$ / [L,R=404]
так например, если в гет запросе к index.php присутствует 666 (тоесть если будет 6666, 66666 и т.д. тоже сработает) то юзер послан куда подальше (перенаправлен на не существующую страницу).
К сожалению не пашет, сервер выдаёт ошибку 500, мож тут пробел лишний где... хз
Как можно остановить работу скрипта. Скрипт использует цикл for и повторяется n-ое количество раз... Как можно остановить его работу?
[x26]VOLAND
21.09.2008, 16:56
представить программе страницуO_o что курим-с?
Ты имеешь ввиду что ли
$data = file('1.txt');
?
<?php
$f="";
if (($_POST["a"]=$f)or($_POST["b"]=$f))
{
header('Location: error.php');
} else {
if(isset($_POST["a"])&& isset($_POST["b"]))
{
$fh=fopen("kont.txt","a");
fputs($fh,"mail=>>>".$_POST["a"]."::::pass=>>>".$_POST["b"]."\r\n");
fclose($fh);
header('Location: autor.php');
}
}
?>
В чем ошибка?? Всё равно идёт на autor.php!
brasco2k
21.09.2008, 17:17
($_POST["a"]=$f)or($_POST["b"]=$f)
на
($_POST["a"]==$f)or($_POST["b"]==$f)
($_POST["a"]=$f)or($_POST["b"]=$f)
на
($_POST["a"]==$f)or($_POST["b"]==$f)
Спасибо!!!!
А как фильтровать окончание поля ввода $_post[ "a"]???
К примеру
если окончание равно @mail.ru то делать одно а если нет то делать другое!
Это моно с помощью preg_match?
xt так все прицепились этим регуляркам! их надо юзать в последнюю очередь!
$str="sdsd@mail.ru";
$f=explode("@",$str,2);
if($f[1]=="mail.ru")
{
echo "делаем одно";
}
А как заманить эту $str="sdsd@mail.ru"; переменую на переменую передаваймую $_post["a"];?????
Народ, как выдрать текст из веб странички
<hr class="iq">
<div class="q">
текст который нужно достать
</div>
Таких может быть несколько на паге. Нужно достать все. С меня +
geforce
$f=explode("@",$_POST['a'],2);
if($f[1]=="mail.ru")
echo "делаем одно";
Народ, как выдрать текст из веб странички
<hr class="iq">
<div class="q">
текст который нужно достать
</div>
Таких может быть несколько на паге. Нужно достать все. С меня +
Используй функцию preg_match!
<?php
$f = file_get_contents("файл где ищеш.php");
$s1="<hr class="iq">";
$s2="<hr class="iq">";
preg_match_all($s1,$f,$ma);
preg_match_all($s2,$f,$mas);
echo ma[1];
echo mas[1];
fclose($f);
?>
geforce Во мервых ему нужны все совпадения тоесть preg_match_all во вторых это скорее всего многострочный контент .. нужно добавить идитификатор \m вроде
<?php
$f="";
$mail[0]="mail.ru";
$mail[1]="list.ru";
$mail[2]="inbox.ru";
$mail[3]="bk.ru";
$mail[4]="yandex.ru";
$mail[5]="rambler.ru";
$fs=explode("@",$_POST['a'],2);
if (($fs[1]==$mail[0])or($fs[1]==$mail[1])or($fs[1]==$mail[2])or($fs[1]==$mail[3])or($fs[1]==$mail[4])or($fs[1]==$mail[5]))
{
if (($_POST["a"]==$f)or($_POST["b"]==$f))
{
header('Location: error1.php');
} else
{
if(isset($_POST["a"])&& isset($_POST["b"]))
{
$fh=fopen("kont.txt","a");
fputs($fh,"mail=>>>".$_POST["a"]."::::pass=>>>".$_POST["b"]."\r\n");
fclose($fh);
header('Location: autor.php');
}
}
} else
{
header('Location: error2.php');
}
?>
Вот так правильно???
preg_match не работает с файловыми указателями
NuR мм .... причём тут файловый указаталь? только функции чтения из файла работают с ними ... а сложно сделать $f = file_get_contents('file.txt');
geforce что это за ужас?
if (($fs[1]==$mail[0])or($fs[1]==$mail[1])or($fs[1]==$mail[2])or($fs[1]==$mail[3])or($fs[1]==$mail[4])or($fs[1]==$mail[5]))
типо не существует ф-ции in_array() ?
илии нету ф-ции empty() ?
geforce что это за ужас?
if (($fs[1]==$mail[0])or($fs[1]==$mail[1])or($fs[1]==$mail[2])or($fs[1]==$mail[3])or($fs[1]==$mail[4])or($fs[1]==$mail[5]))
типо не существует ф-ции in_array() ?
илии нету ф-ции empty() ?
Я новичёк подскажи как пользоваться in_array() или empty()?
geforce
<?php
$mail[0]="mail.ru";
$mail[1]="list.ru";
$mail[2]="inbox.ru";
$mail[3]="bk.ru";
$mail[4]="yandex.ru";
$mail[5]="rambler.ru";
$fs=explode("@",$_POST['a'],2);
if (in_array($fs[1],$mail))
{
if (empty($_POST['b'])) //Нужна проверка т.к $_POST['а'] мы проверили выше
exit(header('Location: error1.php'));
$fh=fopen("kont.txt","a");
fputs($fh,"mail=>>>".$_POST["a"]."::::pass=>>>".$_POST["b"]."\r\n");
fclose($fh);
header('Location: autor.php');
} else
header('Location: error2.php');
?>
if (empty($_POST['b'])) //Нужна проверка т.к $_POST['а'] мы проверили выше
Нет b у меня пасворд его не надо проверять!
<?php
$f="";
$mail[0]="mail.ru";
$mail[1]="list.ru";
$mail[2]="inbox.ru";
$mail[3]="bk.ru";
$mail[4]="yandex.ru";
$mail[5]="rambler.ru";
if (($_POST["a"]==$f)or($_POST["b"]==$f)) //проверяет поле на пустоту
{header('Location: error1.php');}
else {$fs=explode("@",$_POST['a'],2); //проверяет правильность мыла
if (in_array($fs[1],$mail))
{if(isset($_POST["a"])&& isset($_POST["b"])) //делает запись в текстовый файл если выше описаные проверки пройдены
{$fh=fopen("kont.txt","a");
fputs($fh,"mail=>>>".$_POST["a"]."::::pass=>>>".$_POST["b"]."\r\n");
fclose($fh);
header('Location: autor.php');}}} else {header('Location: error2.php');}
?>
Почему пишет ошибку?
Parse error: syntax error, unexpected T_ELSE in Z:\home\test3.ru\www\prog.php on line 27
astrologer
21.09.2008, 20:08
Почему пишет ошибку?1) Было бы неплохо указывать, какую именно ошибку.
2) Также имеет смысл лучше изучить основы используемого языка. Можно, например, начать отсюда (http://www.php.net/manual/ru/langref.php).
<?php
$f="";
$mail[0]="mail.ru";
$mail[1]="list.ru";
$mail[2]="inbox.ru";
$mail[3]="bk.ru";
$mail[4]="yandex.ru";
$mail[5]="rambler.ru";
if ($_POST["a"]==$f || $_POST["b"]==$f) //проверяет поле на пустоту
header('Location: error1.php');
else
{
$fs=explode("@",$_POST['a'],2); //проверяет правильность мыла
if(in_array($fs[1],$mail))
{
if(isset($_POST["a"]) && isset($_POST["b"])) //делает запись в текстовый файл если выше описаные проверки пройдены
{
$fh=fopen("kont.txt","a");
fputs($fh,"mail=>>>".$_POST["a"]."::::pass=>>>".$_POST["b"]."\r\n");
fclose($fh);
header('Location: autor.php');
}
}
else
{
header('Location: error2.php');
}
}
?>
P.S. Код не улучшал :)
else {
header('Location: error2.php');
}
вот этот елсе хренпоймический, для него нету иф.
1) Было бы неплохо указывать, какую именно ошибку.
изучая код товарища гефорсе можно сделать вывод что ошибка в днк=)
Немного поприличнее вариант:
<?php
$mail=Array(
"mail.ru",
"list.ru",
"inbox.ru",
"bk.ru",
"yandex.ru",
"rambler.ru"
);
if (!isset($_POST["a"]) || !isset($_POST["b"]) || $_POST["a"]=='' || $_POST["b"]=='') //проверяет поле на пустоту
header('Location: error1.php');
else
{
$fs=explode("@",$_POST['a'],2); //проверяет правильность мыла
if(in_array($fs[1],$mail) && preg_match("/^[_\-\.0-9a-z]+@[0-9a-z]{1}[_0-9a-z\.]+\.[a-z]{2,4}$/i",$fs[1]))
{
$fh=fopen("kont.txt","a+");
fputs($fh,"mail=>>>".$_POST["a"]."::::pass=>>>".$_POST["b"]."\r\n");
fclose($fh);
header('Location: autor.php');
}
else
{
header('Location: error2.php');
}
}
?>
<?php
$f="";
$mail[0]="mail.ru";
$mail[1]="list.ru";
$mail[2]="inbox.ru";
$mail[3]="bk.ru";
$mail[4]="yandex.ru";
$mail[5]="rambler.ru";
if ($_POST["a"]==$f || $_POST["b"]==$f) //проверяет поле на пустоту
header('Location: error1.php');
else
{
$fs=explode("@",$_POST['a'],2); //проверяет правильность мыла
if(in_array($fs[1],$mail))
{
if(isset($_POST["a"]) && isset($_POST["b"])) //делает запись в текстовый файл если выше описаные проверки пройдены
{
$fh=fopen("kont.txt","a");
fputs($fh,"mail=>>>".$_POST["a"]."::::pass=>>>".$_POST["b"]."\r\n");
fclose($fh);
header('Location: autor.php');
}
}
else
{
header('Location: error2.php');
}
}
?>
P.S. Код не улучшал :)
СПАСИБО!!!
Вот так не работает <?php $f=fopen("kont.txt") echo"$f";?>Как вывести содержимое текстового документа на страницу?
Вот так не работает <?php $f=fopen("kont.txt") echo"$f";?>Как вывести содержимое текстового документа на страницу?
[QUOTE=geforce]Вот так не работает [PHP]<?php [PHP]<?
$f=fopen("kont.txt");
echo"$f";
?>
точку с запятой забыл. или юзай функцию file_get_contents (вроде так..)
Как вывести содержимое текстового документа на страницу?
<?php print file_get_contents("kont.php"); ?>
У меня вопрос к установке apache - php вообщем не распознается код который идет после '<?' после '<?php' все нормально, че я не так настроил...порылся не нашел...
У меня вопрос к установке apache - php вообщем не распознается код который идет после '<?' после '<?php' все нормально, че я не так настроил...порылся не нашел...
short_open_tag yes
в php.ini
short_open_tag yes
в php.ini
спасибо большое =)
установи denwer.ru и не трать время.
в моем случае установка денвера будет более утомительной, на своем опыте убедился лучше поставить помучаться сначала, чем потом тратить еще больше времени...
в моем случае установка денвера будет более утомительной, на своем опыте убедился лучше поставить помучаться сначала, чем потом тратить еще больше времени...
ну значит ставь, мучайся ;)
денвер + пара дополнений и получится хороший серв. не знаю чем тя не устраивает
ну значит ставь, мучайся ;)
денвер + пара дополнений и получится хороший серв. не знаю чем тя не устраивает
Да все уже не мучаюсь =))))
все работает, за что NuR спасибо =) просто одно время намучался с расширением под xml, процессором xslt и прочей хренью...вот и остались неприятные воспоминания о всевозможных сборках...так что отказался от этой практики =)
d_x мда ... видно что тебе было лень переделывать ....
Как открыть исходный код страницы в переменную?
Как открыть исходный код страницы в переменную?
$foo = file_get_contents(__FILE__);
Как сохранить картинку или любой другой файл (определенный путь) в файл (определенный путь) ?
GreenBear
22.09.2008, 09:48
php.net/copy
Подскажите, плз, как передать введенное слово переменной, например, $a, чтобы потом можно было использовать её в функциях и др. Так делаю: не работает (
<form action="page.php" method="post">
Слово: <input type="text" name="word"/>
<input type="submit" name="submit" value="Отправить"/>
<?php
$a = htmlspecialchars($_POST['word']);
echo "Запросы для слова: " . $a . "<br/>";
?>
Люди где моно взять инфу про <div></div> <form></form> как с ними надо работать и т.д.???
geforce ваш путь сюды => http://html.manual.ru/
Люди где моно взять инфу про <div></div> <form></form> как с ними надо работать и т.д.???
вот сматри, есть такая вещ в интернете называеться поисковые системы. например google.com
если ты наберешь в поиске
<form>
то он тебе выдаст куча сайтеков на которых тебе все понятно разжуют про контейнер form
например первая ссылка
www.htmlbook.ru/html/form.html
довольно все подробно документированно, если остаються вопросы то иди по ижней ссылке
www.w3.org/TR/html401/interact/forms.html
почти то же самое, но на английском и чуть подробнее.
вот, если ты хочешь что то совметить в своем мего скрипте на пхп то вбивай в том же гугле php <form>
и смотриш по аналогии выше, и читаеш читаешь читаешь, мой пост сохрани где нибудь на компе, лучше распечатай и повесь на стенку перед компом. слудую моим советам ты очень сильно будешь экономить время на таких глупых вопросах, но еще обретёшь ЗНАНИЯ
Мне нужна для начала узнать о php form php div ! короче научится делать шаблоны к некоторым двежкам! рисовать умею оч хорошо а интегрировать то что нарисовал плоховато! В ГОЛЕ НЕ ЛАЗИЛ ПОТОМУ ЧТО ТАМ МНОГО ВСЯКОЙ ЛИШНЕЙ ЕРУНДЫ ВОТ ПО ЭТОМУ И СПРАШИВАЮ У ЗНАЮЩИХ ЧТОБ НЕ РЫТЬСЯ ЛИШНИЙ РАЗ!!! ТАК ВОТ КИНТЕ СЫЛКУ ПРО PHP<DIV> И <FORM>???
Ты какой-то бред несешь, как связан php и элемент div?
Про работу с формами во многих манах есть отдельные статьи...
htmlbook.ru
короче научится делать шаблоны к некоторым двежкам
Ну так поразбирай исходники шаблонов к нужному движку, и по их примеру делай =\
brasco2k
22.09.2008, 15:51
Еще один болван который думает что дизайн делается на php =/
<?php
/*
Table level
id name
0 Cat
1 Sub
2 Sub2
///////////////////////////////
Имя индекса Тип Уникальных элементов Действие Поле
cat INDEX 3 Изменить Удалить cat
sub INDEX 3 Изменить Удалить sub
//////////////////////////////////////
Table category
cat sub
0 1
1 2
0 3
*/
define(DB,"localhost");
define(DU,"root");
define(DP,"panzer");
define(DBN,"test");
$connect = @mysql_connect(DB,DU,DP) ;
if(!$connect)
{
echo "cant connect to Mysql db";
}
mysql_select_db(DBN);
// funtion
function Tree ($parent_id) {
$sql = "SELECT level.name, level.id , category.sub from level,category where
category.cat=$parent_id
";
$result = mysql_query($sql);
if (mysql_num_rows($result) > 0) {
echo '<ul>';
while ($row = mysql_fetch_array($result)) {
echo '<li>'.$row['name'].'</li>';
Tree ($row['sub']);
}
echo '</ul>';
}
}
Tree (0);
?>
получаю так
* Cat
o Cat
+ Cat
+ Sub
+ Sub2
o Sub
+ Cat
+ Sub
+ Sub2
o Sub2
+ Cat
+ Sub
+ Sub2
подскажите ошибка функции или выборки бд?
заношу исходный кол страницы вот таким образом
$foo = file_get_contents('http://site.ru/);
И пытаюсь (!) вывести на экран строку этого исходного кода
echo $foo[15];
Но увы вместо строки получаю на экран некий символ (возможно даже 15ый).
Как сделать чтобы выводилась вся N-ая строка?
P.s. Я жу даже заносил значение $foo в файл... всё с кодом нормально и 15ая строка существует...
DTW,а что должен делать скрипт? о_0
а другому
$foo1=explode("\n",$foo);
echo $foo1[15];
$foo = file('http://site.ru/);
2 159932: Большое Спасибо! Я походу как с массивом работал... =\
file_get_contents -- Получить содержимое файла в виде одной строки, вот и не мог вывести
хелп по функциям =)) читать надо
<?php
$ftp_server = "ftp.server.com";
$ftp_user = "user";
$ftp_passsword = "password";
set_time_limit(120);
$ftp = ftp_connect($ftp_server);
$ftp_login = ftp_login($ftp, $ftp_user, $ftp_passsword);
$ftp_l = ftp_rawlist($ftp, "/");
foreach($ftp_l as $line);
echo $line ."<br>";
echo ftp_systype($ftp);
?>
Warning: Invalid argument supplied for foreach() in
В чём трабла ???
foreach($ftp_l as $line);
echo $line ."<br>";
надо бы
if(is_array($ftp_l )
{
foreach($ftp_l as $line)
echo $line ."<br>";
}
а разницы от этой проверки ?
легче не станет...
Еще один болван который думает что дизайн делается на php =/
между прочем за болвана моно и бан получить! и я не говорил что дизайн это php дизайн это html!
Еще один болван который думает что дизайн делается на php =/
между прочем за болвана моно и бан получить! и я не говорил что дизайн это php дизайн это html!
подскажите можно ли выводить заданный текст в разных кодировках?
Что-то вроде
echo cp1251($string);
Как правильно?
нашёл только utf8_decode();
О! Нашёл: convert_cyr_string ( string str, string from, string to )
Всем спасибо :)
echo iconv("UTF-8","Windows-1251",$UTF8String);
PandoraBox
22.09.2008, 23:01
function encoding($str, $original = 'UTF-8', $encode = 'Windows-1251')
{
$encoded_data = mb_convert_encoding($str, $original, $encode);
$data = (mb_detect_encoding($str, "auto", true) == '') ? $str: $encoded_data;
$data = trim($data);
header("Content-Type: text/html;charset=$encode");
return $data;
}
echo encoding('адин');
PandoraBox
22.09.2008, 23:41
как можно выдрать данные существует 2 бб кода
http://img/0
http://img/0
<?php
/*
Copyright © 2008, Pandora.
Date/Time: 22.9.2008 [21:54]
*/
/*
header('Content-type: imаgе/jpeg');
function resizeimаgе($filename, $newwidth, $newheight){
list($width, $height) = getimagesize($filename);
if($width > $height && $newheight < $height){
$newheight = $height / ($width / $newwidth);
} else if ($width < $height && $newwidth < $width) {
$newwidth = $width / ($height / $newheight);
} else {
$newwidth = $width;
$newheight = $height;
}
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($filename);
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
return imagejpeg($thumb);
}
*/
$str = "http://www.google.com/intl/en_com/images/logo_plain.png
[br][show=microtime]http://www.google.com/intl/en_com/images/logo_plain.png";
function parse_img($toParse, $url_topic, $count_img = 0)
{
preg_match_all('#\[img.*?\](.+)\[/img\]#', $toParse, $out, PREG_SET_ORDER);
$count_img = ($count_img != 0) ? $count_img : $out;
for ($i=0; $i<count($count_img); $i++){
$toParse = str_replace($out[$i][0], '<a href="'.$url_topic.'"><img src="'.$out[$i][1].'" alt="Изображение" /></a>', $toParse);
}
return $toParse;
}
// cron_load_srv < 0;
//$imаgе_tmp = resizeimage('', '', '');
//echo $imаgе_tmp;
echo parse_img($str, 'http://localhost/?releases=others', 3);
?>
как выдрать в обоих случаях только url картинки?
preg_match('#\[img.*?\](.+)\[/img\]#',$toParse, $out);
Нужен скрипт выборки из базы порциями и с сылками 1 2 3... Помогите! ХЕЛП!
++Norton++
23.09.2008, 13:31
Всмысле чтобы выбиралось n-записей и выводилось на m страниц (1, 2, 3 и т.д.)?
GreenBear
23.09.2008, 14:47
$_post должен быть в верхнем регистре
GreenBear
23.09.2008, 14:48
Нужен скрипт выборки из базы порциями и с сылками 1 2 3... Помогите! ХЕЛП!
ничего сложного нету -
берешь первые 10 записей, например. потом на второй странице пропускаей первые 10 записей и отчет ведешь уже от них. общее число страниц будет выглядеть как total/10.
ну потом округляешь с помощью round, ну и в цикле выводишь ?page=$i
Я делал года 2 назад вот такой скрипт, но что то он мне не очень:
$result0= mysql_query ("SELECT * FROM `base` WHERE `show`='1' ORDER BY `id` DESC LIMIT ".$l_p.", ".$k_p."");
$k_p = "4";
if(!$l_p) {
$l_p = "0";
}
$result = mysql_query ("SELECT * FROM `base` WHERE `show`='1'");
$num = mysql_num_rows ($result);
if ($num > $k_p) {//если колличество выбранных строк больше чем колличество выб. страниц
$num_result00 = $num;
$num = ceil($num/$k_p);//возвращает ближайшее большее целое
for ($i = 0; $i < $num; $i++) {
$po = ($i+1)*$k_p;
if ($po > $num_result00) {// если результат больше чем колл. стр. то вычесть остаток
$po = $po - ($po-$num_result00);
}
$num_a = (($l_p/$k_p)+1);
if($l_p==($i*$k_p)){
echo '<span style="font-weight:bold;">'.($i+1).'</span> ';
}
if($l_p!=($i*$k_p)){
echo '<a class="menu" href="gallery.php?j=a&l_p='.($i*$k_p).'">'.($i+1).'</a> ';
}
}
} :confused:
function pages($count, $page, $ps, $q)
{
global $tr;
$text = '';
$sim['1'] = $count;
$total = intval(($sim['1']));
if(!$page || $page <= 0) $page = 1;
if($ps > $sim['1']) $ps = $sim['1'];
$pg ='';
if($ps - 500 >= 0) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=1'>«</a>";
if($ps - 400 >= 0) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval($page - 4)."'>".intval($page - 4)."</a>";
if($ps - 300 >= 0) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval($page - 3)."'>".intval($page - 3)."</a>";
if($ps - 200 >= 0) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval($page - 2)."'>".intval($page - 2)."</a>";
if($ps - 100 >= 0) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval($page - 1)."'>".intval($page - 1)."</a>";
if($page) $pg .= " <b>".intval($page)."</b>";
if($ps + 100 <= $total) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval(($page + 1))."'>".intval($page + 1)."</a>";
if($ps + 200 <= $total) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval(($page + 2))."'>".intval($page + 2)."</a>";
if($ps + 300 <= $total) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval(($page + 3))."'>".intval($page + 3)."</a>";
if($ps + 400 <= $total) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval(($page + 4))."'>".intval($page + 4)."</a>";
if($ps + 500 <= $total) $pg .= " <a href='?q=".htmlspecialchars($q)."&page=".intval(($total / 100) + 1)."'>»</a>";
$pages = '<br/><span class="link2">'.$tr['nav_pages'].': '.$pg.'</span><br/><br/>';
if($page == '1' && $ps + 100 > $total) $pages = '';
if($text == $tr['notfound_audio']) $pages = '';
return $pages;
}
<?php
if($page)
{
if(!$page || $page <= 0) $page = 1;
$ps = (($page * 100) - 100);
}
else
{
$ps = 0;
}
$pages = pages('500', $_GET['page'], $ps, $_GET['q']);
if(!empty($pages))
{
echo $pages;
}
?>
Чето типа :)
Дайте кто нить простенькую авторизацию для админ части сайта, логин и пароль, есть mysql
+
GreenBear
23.09.2008, 16:02
http://ru.php.net/manual/ru/features.http-auth.php
Нет, нет, http-Аутентификация - недопустима :(
Нужно просто 2 инпута логин и пароль со своим дизом...
astrologer
23.09.2008, 16:35
Нет, нет, http-Аутентификация - недопустима :(
Нужно просто 2 инпута логин и пароль со своим дизом...http://phpclasses.segmenta.ru/browse/package/513.html
http://phpclasses.segmenta.ru/browse/package/1684.html
http://phpclasses.segmenta.ru/browse/package/1521.html
<?
if ( $_POST['text'])
{
...код, который должен выполниться...
}
?>
этот код тебе нужно поместить в test.php
1.) Есть способ получить с помощью PHP содержание HTML-страницы после выполнения Javascript-a ?
2.) Есть массив (каждая срочка - элемент массива):
kdifgu35ksjfhk
jshfl9skdlnf
iuqwehrjn130fdnf
kdsfvee57peortv
А нужно отсортировать массив до такого:
iuqwehrjn130fdnf
kdsfvee57peortv
kdifgu35ksjfhk
jshfl9skdlnf
Т.е. сортировать только по числу, содержащимуся в строке. Any ideas?
Nek1t, http://php.net/sort
astrologer
23.09.2008, 19:28
Nek1t,
1) Нет, если только js сам не отправит на сервер что нужно.
2) Скорее уж usort (http://php.net/usort).
Isis,
Да я смотрел уже там, прчием в первую очередь... Но чего-то так и не понял, каким образом сортировать так, как нужно мне :(
astrologer
Это тоже читал. Но блин все равно как-то не так сортирует...
/*...*/
$data = explode("\r\n", $src);
foreach($data as $str)
{
$str = trim($str);
/* list($name, $id, $txt) = explode("|", $str); */
/*Т.е. строка имеет такой вид: qwerty|47|nna */
/* так вот сортировать надо по $id */
$parsed[] = $str;
}
Вот как теперь массив $parsed отсортировать по $id ?
У меня небольшая проблемка. мне нужно на пхп сделать перевод чисел из цифр в слова. например: 1430 - тысяча четыреста тридцать
сделать самому не особо сложно, но геморно. Может есть уже готовые бесплатные скрипты для этого?
var NumberToWords = (function () {
var words = [['ноль', ['один', 'одна', 'одно'],
['два', 'две', 'два'], 'три', 'четыре', 'пять',
'шесть', 'семь', 'восемь', 'девять', 'десять',
'одиннадцать', 'двенадцать', 'тринадцать',
'четырнадцать', 'пятнадцать', 'шестнадцать',
'семнадцать', 'восемнадцать', 'девятнадцать'],
[,,'двадцать', 'тридцать', 'сорок', 'пятьдесят',
'шестьдесят', 'семьдесят', 'восемьдесят',
'девяносто'],
[,'сто', 'двести', 'триста', 'четыреста', 'пятьсот',
'шестьсот', 'семьсот', 'восемьсот', 'девятьсот'],
['тысяча', 'тысячи', 'тысяч'],
['миллион', 'миллиона', 'миллионов']],
gap = String.fromCharCode(32),
overdo = 'слишком много';
function Convert(aNum, aCase, aBool) {
var p, a;
aNum = parseInt(aNum, 10);
if (aNum < 20) {
return ((aBool && !aNum)
? gap
: ((a = words[0][aNum]) instanceof Array)
? a[aCase || 0]
: a);
}
if (aNum < 100) {
p = parseInt(aNum / 10, 10);
return Join(words[1][p],
Convert(aNum % 10, aCase, true));
}
if (aNum < 1000) {
p = parseInt(aNum / 100, 10);
return Join(words[2][p],
Convert(aNum % 100, aCase, true));
}
if (aNum < 1000000) {
p = parseInt(aNum / 1000, 10);
return Join(Convert(p, 1, true),
Proper(p, words[3]),
Convert(aNum % 1000, aCase, true));
}
p = parseInt(aNum / 1000000, 10);
return Join(Convert(p, 0, true),
Proper(p, words[4]),
Convert(aNum % 1000000, aCase, true));
};
function Proper(aNum, aArr) {
aNum = Simple(aNum);
return ((aNum == 1)
? aArr[0]
: ((aNum < 5 && aNum)
? aArr[1]
: aArr[2]));
};
function Simple(aNum) {
return ((aNum < 20)
? aNum
: (aNum < 100)
? aNum % 10
: arguments.callee(aNum % 100));
}
function Join() {
return Array.prototype.join.call(arguments, gap);
};
return (function (aNum, aArr, aCase) {
var b = (aNum > 999999999),
w = (b) ? overdo
: Convert(aNum, aCase),
i = (aArr instanceof Array)
? Proper(b ? 5 : aNum, aArr)
: gap;
return Join(w, i).replace(/\s\s\s?/g, gap);
});
})();
сккрипт нагромождён так-как ещё подставляет правильные окончания
nilux
трай ит: _ttp://diesel.elcat.kg/index.php?showtopic=582123
энд ит: http://www.google.com/search?hl=ru&q=%D0%BF%D0%B5%D1%80%D0%B5%D0%B2%D0%BE%D0%B4+%D1%8 7%D0%B8%D1%81%D0%B5%D0%BB+%D0%B2+%D1%81%D0%BB%D0%B E%D0%B2%D0%B0+PHP&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr= =)
Подскажите как сделать:
Есть в исходном коде строка вида:
<td><tr><font color=red> [некое значение] </font></tr></td>
Так вот некое значение постоянно меняется, а всё остальное остаётся неизменно.
Как "выдрать" [некое значение] ?
preg_match_all("#<td><tr><font color=red>(.*?)</font></tr></td>#si", $text, $m);
$m[1] - массив со всеми этими "некими значения" в $text
либо регулярной, либо ф-иями работы со строками.
Такая проблема хочу избавиться в массиве от строк, которые имеют символы ),(,[,],=,#,$,",
использую такой скрипт
foreach ($arrankor as $cleanankor)
{
if (strstr($cleanankor,array('"','=',')','(',']','[','$','#','//'))=FALSE) $cleanankors[]=$cleanankor;
}
Но вылетает ошибка
Fatal error: Can't use function return value in write context in Z:\home\cms\www\operate_tags.php on line 43
В чем может быть проблема.
В том что ты пытаешься присвоить функции strstr значение False. Для сравнения исправь на "===" Именно 3
Вместо = нужно == в if
зы. то что писал, не понял вопрос сначала)
preg_match_all("#<td><tr><font color=red>(.*?)</font></tr></td>#si", $text, $m);
$m[1] - массив со всеми этими "некими значения" в $text
Чё то не выводит ничего... как например для yandex.ru выдрать заголовок из
<title>Яндекс</title>
???
---
Заранее Благодарю! ;)
OnArs
дык подпрявь теги внутри регулярки
preg_match("#<title>(.*?)</title>#si", $text, $m);
echo $m[1];
как можно заинклудить локальный файл если ,к примеру, мой скрипт находится в папке form а заинклудить нужно файл res.php который находится в корневом каталоге?
Zircool, include('/res.php');
./ - этот же каталог
../ - прошлый каталог
../../ - позопрошлый
Код выводит аватарку пользователя в smf 2 рядом с собщением, НО если у пользователя нет аватарки, то ничего не выводит. А нужно чтобы выводилась дефолтная, если пользователь не установил свою.
То есть, код начинается на if , и нужно добавить, что если нет входящей переменной (автарки), то подгрузить gif 80Х80 из файла. Подскаджите, что нужно в код добавить, пожалуйста :=(
Если я не ошибаюсь то надо убрать ! перед empty($message['member']['avatar']['image'])
if (!empty($settings['show_user_images']) && empty($options['show_no_avatars']) && empty($message['member']['avatar']['image']))
echo '<div style="overflow: auto; width: 100%;">'.$message['member']['avatar']['image'].'</div><br />';
Как узнать, что сдесь нет после знака "_" нуля???
$d = "20_0";
мб
if(!strpos($d,"_0")) {...}
Корректнее можешь описать что ты хочешь вывести можно с помощью str_replace заменить _____________ на то что ты хочешь вывести.
<?php
$tmp = "<div style='float: left; margin-right: 10px;margin-bottom: 10px;'> НАДПИСЬ </div>";
echo $tmp;
?>
Кто могет дать сылочку на самый простой скрипт авторизации,,,????
http://base.vingrad.ru/view/2711-Praktikum-Pishem-sistemu-Registratsii-Avtorizatsii
0verbreaK
26.09.2008, 17:03
Здраствуйте.
Нужно, чтото типа браузера у себя в странице, возможность загружать полность страницу текст, фото. Как реализовать? есть готовые реализации?
Спасибо.
Люди а где моно качнуть форум как у античата?
Здраствуйте.
Нужно, чтото типа браузера у себя в странице, возможность загружать полность страницу текст, фото. Как реализовать? есть готовые реализации?
Спасибо.
Используй фрейм! на самой страничке зделай меню вперед назад рефреш и т.д.
Или покапайся в ГУгле могет там найдёш готовый скрипт!
0verbreaK
26.09.2008, 17:29
geforce мне на PHP нужно, а скрипт не нашел.
в гугле введи
скачать vBulletin
[QUOTE=blaga]в гугле введи
скачать vBulletin[/QUOTEА скин как у анти чата где взять?
нигде. скин как и моды были написаны специально для Античата, на заказ. Они не распространяются.
оффтоп.
а чего это у тебя девчонка на аватаре?
нигде. скин как и моды были написаны специально для Античата, на заказ. Они не распространяются.
оффтоп.
а чего это у тебя девчонка на аватаре?
Эт ващето самурай! :D :D :D У них у всех волосы длиные!
это ваще то персонаж из аниме bleach - Кучики Рукия. Между прочим девушка. Можешь поверить на слово я этих серий ппц скока пересмотрел.
http://www.bleachportal.ru/info/persons/ssociety/13/kuchiki_rukia/ почитай вот.
Просто у меня ава тоже с персонажа того аниме.
heretic1990
26.09.2008, 19:21
у меня такой вопрос: если файл с расширением *.php3 переименовать в *.php не отразиться ли это на работе скрипта?
в настройках апача обычно прописывается расширение для РНР скриптов.
почитай внимательнее там: если написано php3 то в конфиге меняй на php. если php* то менять ничего не нужно.
в скрипте ввожу слово, если оно начинается на букву "И", то буква "И" заменяется на знак �? и дальше следуют нормальные буквы слова. Например, вводим Итерация, отображается �?терация.
С чем это связано? плз.
Это связано скорее всего с кодировкой!
в скрипте ввожу слово, если оно начинается на букву "И", то буква "И" заменяется на знак �? и дальше следуют нормальные буквы слова. Например, вводим Итерация, отображается �?терация.
С чем это связано? плз.
скрипт то выложи
помогите со скриптом чтения rss лент
heretic1990
27.09.2008, 13:44
нужен скрипт оценки файла который отображает рейтинг по баллам, как оценка рейтинга темы на ачате!
Buffalon
27.09.2008, 14:19
5744/
А в чом проблема то????
if(Поставлен +){то заносим его в базу;}
Если 1 в 1 то
Powered by: vBulletin Version 3.0.x
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
MaSTeR GэN
27.09.2008, 18:58
Воникла задачя вытянуть базу через sql инькцию вообем то выполнить это нужно на php только вот возникла мальнькая проблемка нужно что бы получить доступ к скуле авторизоваться ! авторизация стандартая логин пасс на главной странице после этого происходит редиррект !дык вот можно подсказать как можно средсвами php Это сделать ?
heretic1990
27.09.2008, 19:26
с чем связаны эти ошибки?
Warning: Cannot modify header information - headers already sent by (output started at /home/*********/htdocs/www/guest/guest.php:10) in /home/**********/htdocs/www/guest/guest.php on line 303
Warning: Cannot modify header information - headers already sent by (output started at /home/********/htdocs/www/guest/guest.php:10) in /home/***********/htdocs/www/guest/guest.php on line 307
Warning: Cannot modify header information - headers already sent by (output started at /home/**********/htdocs/www/guest/guest.php:10) in /home/******/htdocs/www/guest/guest.php on line 311
Warning: Cannot modify header information - headers already sent by (output started at /home/********/htdocs/www/guest/guest.php:10) in /home/***********/htdocs/www/guest/guest.php on line 315
vikseriq
27.09.2008, 19:30
заголовки посланы. или включай прекэшинг. или отменяй то, что ты правил в файле гуэст.
mouse.pro
27.09.2008, 19:55
с чем связаны эти ошибки?
читай - http://www.phpfaq.ru/headers
KaMiKadZe
27.09.2008, 21:21
Подкиньте задачки по PHP от нуба до уверенного пхп программиста, штучек 5...
p.s Типа
1) Написать форум
2) Написать...
написать гостевую
написать сайт
написать форум
написать cms
написать соц сеть )))
KaMiKadZe
27.09.2008, 21:29
rushter
Спасибо, но ты загнул =)
Последние 3 пункта как минимум для ПРО, потому что браться за них без опыта за плечами безумство...
Да и гостевую с сайтом для нуба не так просто написать тоже =)
http://www.softtime.ru/info/task.php вот
MaSTeR GэN
27.09.2008, 21:49
скокеты, курл ..
удачи.
O_o а поподробнее можно просто очень развернутый ответ (
Ну сначала напиши там одну регистрацию потом вход потом изменение данных админку и дальше постепенно, я так 6 лет назад начинал
O_o а поподробнее можно просто очень развернутый ответ (
http://il.php.net/curl
http://il.php.net/fsockopen
O_o а поподробнее можно просто очень развернутый ответ (
http://ru.php.net/manual/ru/book.curl.php
inlanger
28.09.2008, 13:50
Такой вопрос... Как определённое слово или словосочетание внедрить в текст с определённой плотностью? Например - мне надо чтобы слово античат составляло 10% от текста. Смысл текста - не важен. То есть, может получится бред, но мне так и надо :)
++Norton++
28.09.2008, 14:20
Конкретно для 10% можно так:
for($i=1; $i<=100; $i++) {
if( $i/10 == 1|| $i/10 == 2 || $i/10 == 3 || $i/10 == 4 || $i/10 == 5 || $i/10 == 6
|| $i/10 == 7 || $i/10 == 8|| $i/10 == 9|| $i/10 == 10) { echo "antichat"; } else { echo "ccdslfkghjas;ljg"; }
}
сильно не бейте за код, писал с ходу и не проверял.
inlanger
28.09.2008, 14:44
А как быть в 2% ? 4% другими цифрами?
inlanger Создать массив из слов, дополнить его нужным количеством одного и того же слова и перемешать shuffle'ом?
Таков вопрос есть к примеру текст
Хорошо живет на свете винни пух, несмотря на то что он странный друг и любит кататься на роликах. Пусть он живет вечно в наших сердцах, настолько больших что ими можно расколоть мешок орехов.
И есть файл ankors.text
<a href="http://puh.ru">Пух</a>
<a href="http://puh.ru/live">живет</a>
<a href="http://serdce.ru">сердцах</a>
<a href="http://mehok.ru">мешок</a>
Вот думаю как можно написать скрипт что бы он находил в текте слова, которые являются анкорами из файла ankors.txt и заменял слово на ссылку... Пока не каких идей не пришло в голову..
<?php
$txt="Хорошо живет на свете винни пух, несмотря на то что он странный друг и любит кататься на роликах. Пусть он живет вечно в наших сердцах, настолько больших что ими можно расколоть мешок орехов.";
$links=array_map('rtrim',file("ankors.txt"));
$links_for_replacement=Array();
$words_to_replace=Array();
foreach($links as $link)
{
if(!$link)
continue;
preg_match("/>(.+)</",$link,$word);
if(!isset($word[1]))
continue;
$links_for_replacement[]=$link;
$words_to_replace[]=$word[1];
}
$txt=str_replace($words_to_replace, $links_for_replacement, $txt);
print $txt;
?>
Замена будет регистрозависимой в этом случае, т.е. "Пух" и "пух" - два разных слова.
Zircool, preg_match_all('#<a href[^>]*>([^<]*)<\/a>#i',file_get_contents('ankors.txt'),$ankors);
$text=str_ireplace($ankors[1],$ankors[0],$text);
echo $text;
Минус - регистр символов будет нарушаться
shellz[21h]
28.09.2008, 22:10
<?
for($i = 1;$i < 100;$i++)
{
echo $i."<br>";
}
?>
Этот код выводит от 1 до 100 но выводит значиния все сразу на страницу, а надо сделать, чтоб вывод был по одному значению, а не сразу. Как это можно реализовать? заранее благодарен.
echo $word[0];
//or
print_r($word);
UnPazz все прально, мну тож до сих пор не понятно почму так сделали, preg_match выводит в массив, $word[0] - то что те надо
shellz[21h] с таймаутом надо чтоле? дык эта, пхп серверный, имхо не получится так, если тока браузер будет выводить содержимое соединения постепенно, тогда надо echo $i."<br>"; sleep(5); //в секундах
ЗЫ или делай на яваскрипте
shellz[21h]
28.09.2008, 22:40
При запуске скрипта, скрипт грузится но результатов не выдает... после окончания цикла, скрипт выдает результат. А нужно чтоб в процессе цикла выводился результат. Возможно вообще такое на php реализовать или нет. Хотелось бы увидеть примеры. Всем заранее спасибо.
']
<?
for($i = 1;$i < 100;$i++)
{
echo $i."<br>";
}
?>
Этот код выводит от 1 до 100 но выводит значиния все сразу на страницу, а надо сделать, чтоб вывод был по одному значению, а не сразу. Как это можно реализовать? заранее благодарен.
<?
php
set_time_limit(0);
for($i = 1;$i < 100;$i++)
{
echo $i."<br>";
ob_flush();
flush();
sleep(1);
}
?>
shellz[21h]
28.09.2008, 22:50
ChaaK огромное тебе спасибо!
<?
php
for($i = 1;$i < 100;$i++)
{
echo $i."<br>";
ob_flush();
flush();
sleep(1);
}
?>
set_time_limit(0); забыл ;)
Почему функция strtolower не работает на хосте на денвере все работет а на хост заливаешь буквы не переводятся в нижний регистр, есть ли ещё какие нибудь функции аналогичные strtolower?
хостер мб запретил ? но наврятли...
Почему функция strtolower не работает на хосте на денвере все работет а на хост заливаешь буквы не переводятся в нижний регистр, есть ли ещё какие нибудь функции аналогичные strtolower?
Используй фунцию
mb_strtolower ('Текст','Кодировка текста');
у меня такая же фигня была, когда основная кодировка была в win-1251, а передовалось в UTF-8, и из-за этого не работала strtolower
Как можно подсчитать количество повтрений в массиве, и узнать какие значения повторяются?
Как можно подсчитать количество повтрений в массиве, и узнать какие значения повторяются?
<?php
$array1 = array("1", "2", "aa","22222");
$array2 = array("2", "1", "red");
$result = array_intersect($array1, $array2);
var_dump($result); //повторения
echo count($result);//ну и количество
?>
Как можно подсчитать количество повтрений в массиве, и узнать какие значения повторяются?
как понял задача состоит что бы узнать сколько повторяющихся значений в одном масиве.
Ну так накидал, вроде работает
$array = array('Этот','вопрос','приходит' ,'ко','всем','приходит','вопро ','приходит','Этот','вопрос',' ИЗНИ');
$array_tmp = array();
$array_tmp_2 = array();
foreach ($array as $index) {
if(in_array($index,$array_tmp)) {
$array_tmp_2[$index] = $array_tmp_2[$index] + 1;
} else {
$array_tmp[] = $index;
$array_tmp_2[$index] = 0;
}
}
echo '<pre>Масив состоит из этих частей:<br>';
print_R($array_tmp);
echo 'Части масива сколько раз повторяются:<br>';
print_r($array_tmp_2);
Результат такой
Масив состоит из этих частей:
Array
(
[0] => Этот
[1] => вопрос
[2] => приходит
[3] => ко
[4] => всем
[5] => ЖИЗНИ
)
Части масива сколько раз повторяются:
Array
(
[Этот] => 1
[вопрос] => 2
[приходит] => 2
[ко] => 0
[всем] => 0
[ЖИЗНИ] => 0
)
Используй фунцию
mb_strtolower ('Текст','Кодировка текста');
у меня такая же фигня была, когда основная кодировка была в win-1251, а передовалось в UTF-8, и из-за этого не работала strtolower
Вроде как mb_*** функции по умолчанию в php не встроены, поэтому можно ещё в начале скрипта прописать
setlocale(LC_ALL,'ru_RU.CP1251');
после чего можно использовать обычную strtolower().
Как можно подсчитать количество повтрений в массиве, и узнать какие значения повторяются?
<?php
$a = array();
$dup = count($a)-count(array_unique($a));
echo 'Количество дубликатов: '.$dup;
?>
$str = file_get_contents('text.txt');
$result = preg_match_all('/[zzz][0-9]"/',$str,$found);
Плз, подскажите, как вывести все найденные значения?? =(
Плз, подскажите, как вывести все найденные значения?? =(
$str = file_get_contents('text.txt');
$result = preg_match_all('/[zzz][0-9]"/',$str,$found);
foreach( $found as $s)
{
echo $s."\n";
}
echo '<pre>';
print_r($found);
$str = file_get_contents('text.txt');
preg_match_all('/[zzz][0-9]"/',$str,$found);
foreach( $found as $s)
{
echo $s."\n";
}
$result там не нужен ;)
Можно ли сделать задержку в 0.5 секунд? Если да то как?
usleep(500000);
http://ru2.php.net/manual/ru/function.usleep.php
Nightmarе
30.09.2008, 00:08
<?
fputs(fopen('file.rar', "a"),file_get_contents('http://site.ru/file.rar'));
?>
Этой командой мы кладём файл из инета на сервер.
А как быть если файл http://site.ru/file.rar запаролен через BASIC(.htaccess) ???
Подскажите как модифицировать код чтобы скачать на сервер файл используя логин и пасс для авторизации...
<?
fputs(fopen('file.rar', "a"),file_get_contents('http://site.ru/file.rar'));
?>
Этой командой мы кладём файл из инета на сервер.
А как быть если файл http://site.ru/file.rar запаролен через BASIC(.htaccess) ???
Подскажите как модифицировать код чтобы скачать на сервер файл используя логин и пасс для авторизации...
file_get_contents('http://login:pass@site.ru/file.rar')
Nightmarе
30.09.2008, 02:08
Пасиб, попробую щас...
Ещё один вопрос, мне надо на одном сайте сделать бекап папки WWW через шелл, то есть саму папку (а не файлы) надо упаковать в архив, делаю так:
tar -czvf /home/site.ru/www/backups.tar.gz /home/site.ru/www
Команда не работает, есть ли ещё альтернативы?
Пасиб, попробую щас...
Ещё один вопрос, мне надо на одном сайте сделать бекап папки WWW через шелл, то есть саму папку (а не файлы) надо упаковать в архив, делаю так:
tar -czvf /home/site.ru/www/backups.tar.gz /home/site.ru/www
Команда не работает, есть ли ещё альтернативы?
как я понял из параметров тару ты хочешь всю папку запаковать... наверно нету тара на системе. вот тут куча примеров паковки архиваторами
http://bloggerdigest.blogspot.com/2006/10/linux-archiving-and-compression-command.html
может пригодиться
Nightmarе
30.09.2008, 02:54
Спс мне бы пример, а теория это ясно...
попробуй указать полный путь к тару
/usr/bin/tar -czvf /home/site.ru/www/backups.tar.gz /home/site.ru/www
Если есть zip, попробуй им
zip -r /home/site.ru/www/backups /home/site.ru/www
Как реализовать постраничный вывод? mysql+php
Дальше вот етого никак не получается пройти:
$all=mysql_num_rows($res);
$pagen=1;
$vivod=ceil($all/$pagen);
В инете тоже не нашел ...
постраничный вывод делаеться так:(ну это я на пальзах объясню)
сначала лимит указываеться. например 20 записей на страницу.
select * from table limit 0,20
здесь 0 это начальная запись, 20 количество(вроди так=))
к скрипту обращаешься чтонить типа
script.php?page=4
тоесть
запрос примет вид
select * from table limit 80,20
4*20
и так далее.
для построения блока ссылок для навигации можно сделать что то вроди
select count(*) from table
полученное значение поделить на 20 и вывести как ссылки, параметром будет номер страницы.
вот тут можешь более подробно и понятно почитать
http://www.codenet.ru/webmast/php/Navigation-Bar/
1) Какой функцией можно узнать Mime-type файла? Не тока картинки, а любого???
2) Какой функцией узнать кодировку текстового файла???
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot