Просмотр полной версии : [php] Новичкам: задаем вопросы
mff и так, и так интересует
Возник следующий вопрос пишукеемешалку (ну назовм это так) выдает какую-то абракадабру посмотрите плз
<?
$f=fopen('key.txt','r') or die ("Ощибка открытия файла");
$key=array();
while(!feof($f)){
$key=fgets($f);
}
fclose($f);
$words=explode(" ",$key);
for($j=0;$j<sizeof($words)-1;){
for($i=0;$i<sizeof($words)-1;){
$words2[]="\r\n"." ".$words[$j].' '.$words[$i];
$i++;
}
$j++;
}
$f=fopen('result.txt','w') or die(" Не могу открыть файл");
foreach($words2 as $k=>$val){
fwrite($f,$val);
$i++;
}
fclose($f);
?>
2ChaaK
Я старый листинг закинул так-то я прописал $key.=fgets($f);
Там в самом результат траблы в выходном файле появляются левые проблемы, бардак какаой-то сколько не бился ничего не получается.
AkyHa_MaTaTa
31.01.2009, 02:37
Приведи пример входного файла и что должно быть во втором файле на выходе, а то не пойму что ты хочешь зделать, как ты сам заметил бардак.
в выходном файле должны быть по два слова выстроенные в колонку.
Щас выложу что уменя выходиит
http://slil.ru/26601295
тут два файла собсно key.txt и results.txt
Почему не рабртает? Не могу понять в чём проблема??
<?php
$im = imagecreatetruecolor(400, 30);
$text = "Welcome!";
$fout = "arial.ttf";
$color = imagecolorallocate($im, 255, 0, 0);
imagettftext($im,11,0,0,0,$color,$font,$text);
imagejpeg($im);
header("Content-type: image/jpeg");
?>
Pashkela
31.01.2009, 06:18
Ну вообще последовательность такая по идее должна быть:
header('Content-type: image/jpeg'); // Показываем, что картинка (лучше делать в начале)
$im = ImageCreateFromPng("123.png"); // СОЗДАЕМ ИЗ какой-то РИАЛ КАРТИНКИ (у тебя такой строки нет, или ты просто текст в браузер вывести какой-то хочешь???)
ну а дальше вроде всё норм
Почему не рабртает? Не могу понять в чём проблема??
imagejpeg($im);
header("Content-type: image/jpeg");
сначала картинку выводишь, а потом говоришь после этого типа ааа...похоже там картинка была
header("Content-type: image/jpeg");
imagejpeg($im);
Все равно не работает!
<?php
header("Content-type: image/jpeg");
$im = imagecreatefromjpeg("123.jpeg");
$text = "Welcome!";
$fout = "arial.ttf";
$color = imagecolorallocate($im, 255, 0, 0);
imagettftext($im,11,0,0,0,$color,$font,$text);
imagejpeg($im);
?>
Пишет:
Warning: imagettftext() [function.imagettftext]: Could not find/open font in G:\home\img.ru\www\text.php on line 7
яШяаJFIFяю>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality яЫC $.' ",#(7),01444'9=82<.342яЫC 2!!
geforce, вроде не может найти шрифт. он у тебя там же в папке лежит?
mailbrush
31.01.2009, 10:22
geforce, у тя $foUt = "arial.ttf"; а тут imagettftext($im,11,0,0,0,$color,$foNt,$text);
mailbrush
31.01.2009, 10:38
Вот скрипт без создания текста на какойто картинке, как грил пашкелла:
<?php
$im = imagecreatetruecolor(520, 50); //создаем фон
$text = "Welcome!"; // текст
$font = "arial.ttf"; // шрифт (либо лежит в папке со скриптом, либо полный путь
$color = imagecolorallocate($im, 74, 74, 199); // цвет текста
imagettftext($im,20,0,30,30,$color,$font,$text); // собсна сама картинка
header("Content-type: image/jpeg"); // ставим контент тип - картинку
imagejpeg($im); // выводим картинку
?>
Вот, вроде в комментах...
помогите чуть-чуть
нужно генерилку xml
xml такого вида:
<?xml version="1.0" encoding="windows-1251"?>
<b>
<i><n>название_картинки_без_расш рения</n><a>полный_урл</a><t>альтерн_текст_для_картинки</t></i>
...................
............
......
.. и т.д
</b>
Pashkela
31.01.2009, 12:30
<?php
$a = "название_картинки_без_расш рения";
$b = "полный_урл";
$c = "альтерн_текст_для_картинки";
$fout=fopen('123.xml','w');
fwrite ($fout,'<?xml version="1.0" encoding="windows-1251"?>' . "\r\n");
fwrite ($fout,'<b>' . "\r\n");
fwrite ($fout,'<i><n>'.$a.'</n><a>'.$b.'</a><t>'.$c.'</t></i>' . "\r\n");
fwrite ($fout,'............' . "\r\n");
fwrite ($fout,'</b>' . "\r\n");
fclose($fout);
?>
ikolla$$
31.01.2009, 12:31
ожеш засунуть все это в текстовик,затем открывать его хоть темже филе_гет_контентс,и делать str_replace "название_картинки_без_расш рения"и прочего на нужную переменную,и делать эхо.
а вот скажите, будет ли большая нагрузка?
будет выборка из бд, потом будет генерится хмл, а потом яваскрипт будет выводить это все.
получается что скрипт будет работать при каждом обращении к странице.
Nightmarе
31.01.2009, 14:18
Вот тут у меня вопрос возник, а как вывести на экран содержимое рядом лежащей со скриптом папки, ну скажем ./files/, не системными командами, и чтобы файлы были в виде ссылок:
<a href=http://lol.ru/>file.exe</a>
<a href=http://lol.ru/>file2.exe</a>
<a href=http://lol.ru/>file3.exe</a>
ну и т.д...
Dr.Frank
31.01.2009, 14:26
$folder=opendir("./files");
while(false !== ($k = readdir($folder))){
if($k!="." && $k!="..")
echo "<a href=http://lol.ru/>$k</a>\r\n";
}
foreach(glob('*.exe') as $f)
echo '<a href=http://lol.ru/'.$f.'>'.$f.'</a>'."\n";
Pashkela
31.01.2009, 16:25
а вот скажите, будет ли большая нагрузка?
будет выборка из бд, потом будет генерится хмл, а потом яваскрипт будет выводить это все.
получается что скрипт будет работать при каждом обращении к странице.
а надо задачу сразу озвучивать, а надо посмотреть. Если тебе надо только эмулировать .xml формат вывода какой-то инфы на экран, а сам файл .xml потом не понадобиться никогда, тогда конечно и файл .xml записывать не надо, а сразу просто выводить на экран, посредством
echo 'бла-бла'.$a.'бла-бла'.$b.'бла-бла'.$c
в общем тоже самое, но без записи в файл
<html>
<?php
die();
?>
Я тут!
</html>
если я в начале кода всего напишу между тегами "die();"
то значит и то что после тега php(<?php ?>) отпадает все? Или то что между тегами php отпадает?
а надо задачу сразу озвучивать, а надо посмотреть. Если тебе надо только эмулировать .xml формат вывода какой-то инфы на экран, а сам файл .xml потом не понадобиться никогда, тогда конечно и файл .xml записывать не надо, а сразу просто выводить на экран, посредством
echo 'бла-бла'.$a.'бла-бла'.$b.'бла-бла'.$c
в общем тоже самое, но без записи в файл
просто у меня яваскрипт , парсит хмл, а яваскрипт переписывать гемор....
astrologer
31.01.2009, 17:52
просто у меня яваскрипт , парсит хмл Если это происходит на клиенте, то движок браузера прекрасно (и быстро) умеет парсить xml.
diznt, сам видишь, что да.
Помогите найти ошибочку))
<?php
if(isset($_POST['content']))
{
$fd=@fopen($_POST['firstname'],"w");
if(!$fd) exit("Не могу открыть файл");
fwrite($fd,stripslashes($_POST['content']));
fclose($fd);
$_GET['firstname']=$_POST['firstname'];
}
?>
<html>
<head>
</head>
<body bgcolor="#FFFFFF">
<form method="post" action="edit.php" name="first" method="get">
Имя файла:
<input type="text" name="firstname" value="<?php echo $_GET['firstname']; ?>">
<br>
</form>
<?php
if(isset($_GET['firstname']))
$fd=@fopen($_GET['firstname'],"r");
if(!$fd) exit("Такой файл отсутствует");
$bufer=fread($fd,filesize($_GET['firstname']));
fclose($fd);
?>
<form action="edit.php" name=second method="post">
<textarea cols=76 rows=10 name="content">
<?php echo $bufer; ?>
</textarea><br>
<input type="hidden" name=ferstname value="<?php echo $_GET['firstname']; ?>" >
<input type="submit" value="Редактировать">
</form>
</body>
</html>
Помогите найти ошибочку))
<?php
if (isset($_POST['content'])) {
$fd = @fopen($_POST['firstname'], "w");
if (!$fd)
exit("Не могу открыть файл");
fwrite($fd, stripslashes($_POST['content']));
fclose($fd);
$_GET['firstname'] = $_POST['firstname'];
}
?>
<html>
<head>
</head>
<body bgcolor="#FFFFFF">
<form method="post" action="edit.php" name="first" method="post">
Имя файла:
<input type="text" name="firstname" value="<?php echo $_POST['firstname']; ?>">
<br>
</form>
<?php
if (isset($_POST['firstname']))
$fd = @fopen($_POST['firstname'], "r");
if (!$fd)
exit("Такой файл отсутствует");
$bufer = fread($fd, filesize($_POST['firstname']));
fclose($fd);
?>
<form action="edit.php" name=second method="post">
<textarea cols=76 rows=10 name="content">
<?php echo $bufer; ?>
</textarea><br>
<input type="hidden" name=ferstname value="<?php echo $_POST['firstname']; ?>" >
<input type="submit" value="Редактировать">
</form>
</body>
</html>
хоть бы в нормальный вид привёл
не..не работает....ошибку выдает.....
Ты бы хоть сказал какую...,мне сейчас не проверить просто.
Dimaus
<?php
if (isset($_POST['content'])) {
$fd = @fopen($_POST['firstname'], "w");
if (!$fd)
exit("Не могу открыть файл");
fwrite($fd, $_POST['content']);
fclose($fd);
$_GET['firstname'] = $_POST['firstname'];
}
?>
<html>
<head>
</head>
<body bgcolor="#FFFFFF">
<form method="post" action="edit.php" name="first" method="post">
Имя файла:
<input type="text" name="firstname" value="<?php echo $_POST['firstname']; ?>">
<br>
</form>
<?php
if (isset($_POST['firstname']))
$fd = @fopen($_POST['firstname'], "r");
if (!$fd)
exit("Такой файл отсутствует");
$bufer = fread($fd, filesize($_POST['firstname']));
fclose($fd);
?>
<form action="edit.php" name=second method="post">
<textarea cols=76 rows=10 name="content">
<?=htmlspecialchars($bufer)?>
</textarea><br>
<input type="hidden" name="firstname" value="<?php echo $_POST['firstname']; ?>" >
<input type="submit" value="Редактировать111">
</form>
</body>
</html>
Ошибка
Имя файла:
Notice: Undefined variable: fd in z:\home\dima.ru\www\edit.php on line 23
Такой файл отсутствует
mailbrush
01.02.2009, 00:51
А так?
<?php
if (isset($_POST['content'])) {
$fd = @fopen($_POST['firstname'], "w");
if (!$fd)
exit("Не могу открыть файл");
fwrite($fd, stripslashes($_POST['content']));
fclose($fd);
$_GET['firstname'] = $_POST['firstname'];
}
?>
<html>
<head>
</head>
<body bgcolor="#FFFFFF">
<form method="post" action="edit.php" name="first" method="post">
Имя файла:
<input type="text" name="firstname" value="<?php echo $_POST['firstname']; ?>">
<br>
</form>
<?php
if (isset($_POST['firstname'])) {
$fd = @fopen($_POST['firstname'], "r");
if (!$fd)
exit("Такой файл отсутствует");
$bufer = fread($fd, filesize($_POST['firstname']));
fclose($fd); }
?>
<form action="edit.php" name=second method="post">
<textarea cols=76 rows=10 name="content">
<?php echo $bufer; ?>
</textarea><br>
<input type="hidden" name=ferstname value="<?php echo $_POST['firstname']; ?>" >
<input type="submit" value="Редактировать">
</form>
</body>
</html>
Все окей!!!
А что ты изменил??
mailbrush
01.02.2009, 01:31
Поставил {} тут
if (isset($_POST['firstname'])) {
$fd = @fopen($_POST['firstname'], "r");
if (!$fd)
exit("Такой файл отсутствует");
$bufer = fread($fd, filesize($_POST['firstname']));
fclose($fd);
}
Nightmarе
01.02.2009, 03:58
Подскажите как в параметре $lol сделать массовую автосмену символов???
Вот: Ч=Ch
Ш=Sh
Щ=Sch
Ю=Yu
Я=Ya
ч=ch
ш=sh
щ=sch
ю=yu
я=ya
А=A
Б=B
В=V
Г=G
Д=D
Е=E
Ё=E
Ж=J
З=Z
И=I
Й=Y
К=K
Л=L
М=M
Н=N
О=O
П=P
Р=R
С=S
Т=T
У=U
Ф=F
Х=H
Ц=C
Ъ="
Ы=Y
Ь='
Э=E
а=a
б=b
в=v
г=g
д=d
е=e
ё=e
ж=j
з=z
и=i
й=y
к=k
л=l
м=m
н=n
о=o
п=p
р=r
с=s
т=t
у=u
ф=f
х=h
ц=c
ь='
ы=y
ъ="
э=e
Приведите пример как это можно сделать желательно одной командой.
Pashkela
01.02.2009, 04:10
Одной командой точно не получится. Тут по любэ работа с массивами. Устроит - накалякаю.
Nightmarе
01.02.2009, 04:38
Да коненчо устроит, главное пример покажите!!!
AkyHa_MaTaTa
01.02.2009, 04:39
2 Nightmarе если я правильно понял то нужно например
Ж заменить на J, то делаешь массив значения где индексы массива это что менять а соответствующие значения - как строки замены,вот
function transliteral($text=null){
$maska=array('Ч'=>'Ch','Ш'=>'Sh','Щ'=>'Sch','Ю'=>'Yu'
,'ш'=>'sh','щ'=>'sch','ю'=>'yu','я'=>'ya'
,'А'=>'A','Б'=>'B','В'=>'V','Г'=>'G'
,'Д'=>'D','Е'=>'E','Ё'=>'E','Ж'=>'J'
,'З'=>'Z','И'=>'I','Й'=>'Y','К'=>'K'
,'Л'=>'L','М'=>'M','Н'=>'N','О'=>'O'
,'П'=>'P','Р'=>'R','С'=>'S','Т'=>'T'
,'У'=>'U','Ф'=>'F','Х'=>'H','Ц'=>'C'
,'Ъ'=>'"','Ы'=>'Y','Ь'=>'\'','Э'=>'E'
,'а'=>'a','б'=>'b','в'=>'v','г'=>'g'
,'д'=>'d','е'=>'e','ё'=>'e','ж'=>'j'
,'з'=>'z','и'=>'i','й'=>'y','к'=>'k'
,'л'=>'l','м'=>'m','н'=>'n','о'=>'o'
,'п'=>'p','р'=>'r','с'=>'s','т'=>'t'
,'у'=>'u','ф'=>'f','х'=>'h','ц'=>'c'
,'ь'=>'\'','ы'=>'y','ъ'=>'"','э'=>'e'
,'Я'=>'Ya','ч'=>'ch');
return !empty($text) ? strtr($text,$maska) : null;
}
echo transliteral("Ема ее");
<?php
// функция превода текста с кириллицы в траскрипт
function encodestring($st)
{
// Сначала заменяем "односимвольные" фонемы.
$st=strtr($st,"абвгдеёзийклмнопрстуфхъыэ _ ",
"abvgdeeziyklmnoprstufh'iei-");
$st=strtr($st,"АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЭ _",
"ABVGDEEZIYKLMNOPRSTUFH'IEI");
// Затем - "многосимвольные".
$st=strtr($st,
array(
"ж"=>"zh", "ц"=>"ts", "ч"=>"ch", "ш"=>"sh",
"щ"=>"shch","ь"=>"", "ю"=>"yu", "я"=>"ya",
"Ж"=>"ZH", "Ц"=>"TS", "Ч"=>"CH", "Ш"=>"SH",
"Щ"=>"SHCH","Ь"=>"", "Ю"=>"YU", "Я"=>"YA",
"ї"=>"i", "Ї"=>"Yi", "є"=>"ie", "Є"=>"Ye"
)
);
// Возвращаем результат.
return $st;
}
echo encodestring("Привет **** жлоб пиздец");
?>
mailbrush
01.02.2009, 14:45
Прилепил форму. Кракен +5!
<?php
$text=$_POST['text'];
echo '<b>Source:</b> <br /><form name="" action="" method="post">
<textarea name=text></textarea> <br />
<input type="submit" value="Translit">
</form>';
// функция превода текста с кириллицы в траскрипт
function encodestring($st)
{
// Сначала заменяем "односимвольные" фонемы.
$st=strtr($st,"абвгдеёзийклмнопрстуфхъыэ _ ",
"abvgdeeziyklmnoprstufh'iei-");
$st=strtr($st,"АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЭ _",
"ABVGDEEZIYKLMNOPRSTUFH'IEI");
// Затем - "многосимвольные".
$st=strtr($st,
array(
"ж"=>"zh", "ц"=>"ts", "ч"=>"ch", "ш"=>"sh",
"щ"=>"shch","ь"=>"", "ю"=>"yu", "я"=>"ya",
"Ж"=>"ZH", "Ц"=>"TS", "Ч"=>"CH", "Ш"=>"SH",
"Щ"=>"SHCH","Ь"=>"", "Ю"=>"YU", "Я"=>"YA",
"ї"=>"i", "Ї"=>"Yi", "є"=>"ie", "Є"=>"Ye"
)
);
// Возвращаем результат.
return $st;
}
$func=encodestring($text);
if (isset($_POST[text])){
echo "<b>Result:</b> <br /><textarea>$func</textarea>";
}
?>
привет можно ли как-то организовать ,я вставил на свою страничку ифрейм на сайт vkontakte и можно как-то сзделать что бы при заходе на мою страничку с ifame выгружалась страничка пользователя но там был нарисован другой рейтинг.Вроде так сделать нельзя.
vikseriq
01.02.2009, 19:06
можно. правкой тега с рейтингом с помощью js. так как фрейм, то вообще кул = window.frame[0].reit.value="0" Вот примерно так (код не рабочий, чисто сэмпл). ПХП тут не нужен )
надо будет у себя локально изменить теги с рейтингм ,но веть у меня на хосте только iframe а всё остальное выгружается у пользователя
если id у тэга, то по идее можно так..
( у меня получалось ), с ифреймом тоже должно прокатить.
<script language="javascript">document.getElementById("id_элемента").innerHTML = "значение"</script>
я вот всё думаю как это сделать но чет даже принцип не догоняю,а до самого когда мне такими темпами еще далеко.
Whirt
стукни в асю 3-семь-семь-шесть-6-девять-9-25
ну вот кусок кода Вконтакте главной страницы пользователя где пишут про рейтинг
<a style='text-decoration:none' href='rate.php'>
<div id="rateGold">
<div id="percentGold">120</div>
<div class="clearFix">
<div id="rateLeftGold" style="width:24px">
</div>
<div id="rateRightGold" style="width:175px">
</div>
</div>
</div>
</a>
тебе нужно будет скриптом это делать, потому что если рейт не золотой, а <101 , то там будет называться не percentGold, а как-то по другому. Ну хз, изворачивайся уж как нить. Можно с пхп извратиться, чтобы определялся тип рейтинга, или джавой как нить ( я в ней не силен ), тут уже фантазию подключай.)) Общий принцип я тебе уже написал выше, должно сработать по идее.
waik
JS не силен. Посредством php можно брать с нужной страницы html код и заменить рейтинг и вывести. Если уустраивает то могу помочь
AkyHa_MaTaTa
01.02.2009, 22:04
можно. правкой тега с рейтингом с помощью js. так как фрейм, то вообще кул = window.frame[0].reit.value="0" Вот примерно так (код не рабочий, чисто сэмпл). ПХП тут не нужен )
Ну наверно из parenta ты не достучишся непосредствено до фрейма потому как Permission denied to get property Window.documen, то есть когда в iframe/frame ты загружаешь внешню страницу(находяшиюся на другом хосте) то у тебя из парента непосредствено нету доступа, другое дело что из ифрейма можешь достучаться до парента и его обьектной модели.
Здравствуйте,пытаюсь написать скрипт для перемещения файла,но что-то не выходит,помогите :) ,буду благодарен!<?
if(!isset($_POST['sub']))
{
echo <<<HERE
<center><form action="up.php" method="post" enctype="multipart/form-data">
Закачка файла:<br>
<input type="file" name="file"><br>
<input type="submit" name="sub">
</form></center>
HERE;
}
else{
if($_POST['file']=="none")
{
echo "Вы забыли указать файл";
}
elseif(copy($_POST[file],folder/$_POST[file]))
{
echo "OK";
}
else
{
echo "Файл не был загружен";
}
}
?>
Warning: Division by zero in K:\home\localhost\www\php\up.php on line 26
То есть файла нет?
Pashkela
01.02.2009, 22:24
up.php в студию, ты там на ноль делишь, о чем тебе на чистом английском и сообщают
и второе, это чо???
if($_POST['file']=="none")
надо так (как минимум):
if(empty($_POST['file']))
AkyHa_MaTaTa
01.02.2009, 22:26
elseif(copy($_POST['file'],"folder/$_POST[file]"))
up.php в студию, ты там на ноль делишь, о чем тебе на чистом английском и сообщают
это и есть up.php,один и тот же файл принимает и обрабатывает!
Pashkela
01.02.2009, 22:29
это и есть up.php,один и тот же файл принимает и обрабатывает!
Зашибись
Когда весь код в одном файле, action явно нах...й не нужен
elseif(copy($_POST[file],"folder/$_POST[file]"))
пишет Вы забыли указать файл)
здравствуйте проблемма такова ...
1.не работает почему то скрипт для вывода статов героя про их распределению.
2. не выходит сделать кроссбраузерную кнопку (сохранить)
3. он включает php и js сразу
<?php
echo "<tr><td class='param'>Сила <div id=si></div><td class='st'>".$tmpparams["si"];
if ($tmpparams["dsi"]<>0) {if($tmpparams["dsi"]>0) {echo "+".$tmpparams["dsi"]; }else{ echo $tmpparams["dsi"];}}
echo"<tr><td class='param'>Ловкость <div id=lo></div><td class='st'>".$tmpparams["lo"];
if ($tmpparams["dlo"]<>0) {if($tmpparams["dlo"]>0) {echo "+".$tmpparams["dlo"]; }else{ echo $tmpparams["dlo"];}}
echo"<tr><td class='param'>Интуиция <div id=ud></div><td class='st'>".$tmpparams["ud"];
if ($tmpparams["dud"]<>0) {if($tmpparams["dud"]>0) {echo "+".$tmpparams["dud"]; }else{ echo $tmpparams["dud"];}}
echo"<tr><td class='param'>Здоровье <div id=zd></div><td class='st'>".$tmpparams["zd"];
if ($tmpparams["dzd"]<>0) {if($tmpparams["dzd"]>0) {echo "+".$tmpparams["dzd"]; }else{ echo $tmpparams["dzd"];}}
echo"<tr><td class='param'>Знания <div id=zn></div><td class='st'>".$tmpparams["zn"];
if ($tmpparams["dzn"]<>0) {if($tmpparams["dzn"]>0) {echo "+".$tmpparams["dzn"]; }else{ echo $tmpparams["dzn"];}}
echo"<tr><td class='param'>Божественность <div id=bo></div><td class='st'>".$tmpparams["bo"];
if ($tmpparams["dbo"]<>0) {if($tmpparams["dbo"]>0) {echo "+".$tmpparams["dbo"]; }else{ echo $tmpparams["dbo"];}}
echo"<br><div id=ups></div>";
echo "<SCRIPT LANGUAGE='JavaScript' SRC='/js/st.js'></SCRIPT><script language=JavaScript>
st(".$user["si"].",".$user["lo"].",".$user["ud"].",".$user["zd"].",".$user["zn"].",".$user["bo"].",".$user["nstats"].");
</script>";
if ($user["nstats"]>0)
echo '<br><center><a onclick="save()" style = "cursor:hand">Сохранить</a></center>';
?> var si = 1;
var lo = 1;
var ud = 1;
var zd = 1;
var zn = 1;
var bo = 1;
var ups = 0;
var ssi = 1;
var slo = 1;
var sud = 1;
var szd = 1;
var szn = 1;
var sbo = 1;
var nym = 0;
var nmym = 0;
var nsym = 0;
function st (ssi,slo,sud,szd,szn,sbo,sup)
{
si = ss;
lo = sl;
ud = su;
zd = szd;
zn = szn;
bo = sp;
ups = sup;
ssi = ss;
slo = sl;
sud = su;
szd = szd;
szn = szn;
sbo = sp;
if (ssi<1) ssi=1;
if (slo<1) slo=1;
if (sud<1) sud=1;
if (szd<1) szd=1;
if (szn<1) szn=1;
if (sbo<1) spbo=1;
if (ups>0){
top.frames['main_top'].document.all('si').innerHTML = ssi+'<a onclick="stupsi(1)" style = "cursor:hand">+</a><a onclick="stupsi(-1)" style = "cursor:hand">-</a>';
top.frames['main_top'].document.all('lo').innerHTML = slo+'<a onclick="stuplo(1)" style = "cursor:hand">+</a><a onclick="stuplo(-1)" style = "cursor:hand">-</a>';
top.frames['main_top'].document.all('ud').innerHTML = sud+'<a onclick="stupud(1)" style = "cursor:hand">+</a><a onclick="stupud(-1)" style = "cursor:hand">-</a>';
top.frames['main_top'].document.all('zd').innerHTML = szd+'<a onclick="stupzd(1)" style = "cursor:hand">+</a><a onclick="stupzd(-1)" style = "cursor:hand">-</a>';
top.frames['main_top'].document.all('zn').innerHTML = szn+'<a onclick="stupzn(1)" style = "cursor:hand">+</a><a onclick="stupzn(-1)" style = "cursor:hand">-</a>';
top.frames['main_top'].document.all('bo').innerHTML = sbo+'<a onclick="stupbo(1)" style = "cursor:hand">+</a><a onclick="stupbo(-1)" style = "cursor:hand">-</a>';
}
if (ups==0){
top.frames['main_top'].document.all('si').innerHTML = ssi;
top.frames['main_top'].document.all('lo').innerHTML = slo;
top.frames['main_top'].document.all('ud').innerHTML = sud;
top.frames['main_top'].document.all('zd').innerHTML = szd;
top.frames['main_top'].document.all('zn').innerHTML = szn;
top.frames['main_top'].document.all('bo').innerHTML = sbo;
}
if (ups != 0) top.frames['main_top'].document.all('ups').innerHTML ='Повышений: '+ups;
}
function stupsi (up) {
if ((up==-1 && si > ssi) | (up==1))
if (up==-1 | ups>0) {
si += up;
top.frames['main_top'].document.all('si').innerHTML =si+'<a onclick="stupsi(1)" style = "cursor:hand">+</a><a onclick="stupsi(-1)" style = "cursor:hand">-</a>' ;
ups -= up;
if (ups != 0) top.frames['main_top'].document.all('ups').innerHTML ='Повышений: '+ups;
if (ups == 0) top.frames['main_top'].document.all('ups').innerHTML = '';
}}
function stuplo (up) {
if ((up==-1 && lo > slo) | (up==1))
if (up==-1 | ups>0) {
lo += up;
top.frames['main_top'].document.all('lo').innerHTML = lo+'<a onclick="stuplo(1)" style = "cursor:hand">+</a><a onclick="stuplo(-1)" style = "cursor:hand">-</a>' ;
ups -= up;
if (upsi != 0) top.frames['main_top'].document.all('ups').innerHTML ='Повышений: '+ups;
if (upsi == 0) top.frames['main_top'].document.all('ups').innerHTML = '';
}}
function stupud (up) {
if ((up==-1 && ud > sud) | (up==1))
if (up==-1 | ups>0) {
ud += up;
top.frames['main_top'].document.all('ud').innerHTML = ud+'<a onclick="stupud(1)" style = "cursor:hand">+</a><a onclick="stupud(-1)" style = "cursor:hand">-</a>' ;
ups -= up;
if (ups != 0) top.frames['main_top'].document.all('ups').innerHTML ='Повышений: '+ups;
if (ups == 0) top.frames['main_top'].document.all('ups').innerHTML = '';
}}
function stupzd (up) {
if ((up==-1 && zd > szd) | (up==1))
if (up==-1 | ups>0) {
zd += up;
top.frames['main_top'].document.all('zd').innerHTML = zd+'<a onclick="stupzd(1)" style = "cursor:hand">+</a><a onclick="stupzd(-1)" style = "cursor:hand">-</a>' ;
ups -= up;
if (ups != 0) top.frames['main_top'].document.all('ups').innerHTML ='Повышений: '+ups;
if (ups == 0) top.frames['main_top'].document.all('ups').innerHTML = '';
}}
function stupzn (up) {
if ((up==-1 && zn > szn ) | (up==1))
if (up==-1 | ups>0) {
zn += up;
top.frames['main_top'].document.all('zn').innerHTML = zn+'<a onclick="stupzn(1)" style = "cursor:hand">+</a><a onclick="stupzn(-1)" style = "cursor:hand">-</a>' ;
ups -= up;
if (ups != 0) top.frames['main_top'].document.all('ups').innerHTML ='Повышений: '+ups;
if (ups == 0) top.frames['main_top'].document.all('ups').innerHTML = '';
}}
function stupbo (up) {
if ((up==-1 && bo > sbo) | (up==1))
if (up==-1 | ups>0) {
bo += up;
top.frames['main_top'].document.all('power').innerHTML = bo+'<a onclick="stupbo(1)" style = "cursor:hand">+</a><a onclick="stupbo(-1)" style = "cursor:hand">-</a>' ;
ups -= up;
if (ups != 0) top.frames['main_top'].document.all('ups').innerHTML ='Повышений: '+ups;
if (ups == 0) top.frames['main_top'].document.all('ups').innerHTML = '';
}}
function save () {
top.frames['main_top'].document.all('si').innerHTML = '';
top.frames['main_top'].document.all('si').innerHTML = '<form method=post action=main.php name=stats>'+'<input type=hidden name=si value='+si+'>'+'<input type=hidden name=lo value='+lo+'>'+'<input type=hidden name=ud value='+ud+'>'+ '<input type=hidden name=zd value='+zd+'>' + '<input type=hidden name=zn value='+zn+'>'+'<input type=hidden name=bo value='+bo+'>' + '<input type=hidden name=ups value='+ups+'>' + '</form>'+si+'<a onclick="stupsi(1)" style = "cursor:hand">+</a><a onclick="stups(-1)" style = "cursor:hand">-</a>';
top.frames['main_top'].document.stats.submit();
}
если можно как то упростить и исправить . буду очень благодарен
должно быть так (пример: Сила 1 и если есть лишние навыки то высвечивается + напротив каждого стата
и внизу их свободное количество)
фигня какаято
1 у тебя никогда не будет $_POST['file']=="none"
2 if (is_uploaded_file($_FILES['file']['tmp_name']))
{
move_uploaded_file($_FILES['filen']['tmp_name'], "/img/wallpaper".$name_image."");
}
Pashkela
01.02.2009, 22:33
"пишет файл не указан!)"
ты загрузить хочешь (с нуля) или скопировать существующий файл? Если файла нет (локально) - конечно выдаст ошибку. Если ты пытаешься сделать загрузку файла на сервер со стороны клиента - это вовсе не так делается
в общем понятно, скорее всего загрузить файл на сервер со стороны клиента, вот тебе скрипт, который не особо мною проверен на безопасность, но функционален хотя бы (если речь вообще идет о файлообменнике типо):
http://slil.ru/26605500
код скрипта сюда не вставляется, похоже за шелл принимает:))
[/php]
AkyHa_MaTaTa
01.02.2009, 22:33
я не пойму че ты пытаешься зделать kevmen копирования сушествуюших на сервере файлов или загрузку новых файлов, потому как у тебя полная каша
<input type="file" name="file"><b
а здеся же
elseif(copy($_POST[file],folder/$_POST[file]))
определися.
folder/$_FILES[file])
ошибся!
<?
if(!isset($_POST['sub']))
{
echo <<<HERE
<center><form action="up.php" method="post" enctype="multipart/form-data">
Введите пароль:
<input type="password" name="pass"><br>
<br>
<br>
<br>
Закачка файла:<br>
<input type="file" name="file"><br><br>
<br>
<input type="submit" name="sub"><br>
</form></center>
HERE;
}
else{
if ($_FILES['file']['name']=="none") {echo ("Вы забыли указать файл...");}
elseif
(copy($_FILES['file']['tmp_name'], "folder/".$_FILES['file']['name']))
{echo ("Файл ".$_FILES['file'] ['name'] ." размером ".$_FILES['file']['size']." байт успешно скопирован!");}
else
echo("He удалось скопировать ".
$_FILES['file']['name']);} ?>
вот,получилось!Спасибо
kevmen Боюсь, что вы глубоко ошибаетесь $_POST['file']=="none" - означает сравнение перменной $_POST['file'] и СТРОКИ none. Пустая строка - это '' или "". В крайнем случае empty($_POST['file'])
mailbrush
01.02.2009, 22:58
если он отсутствует,значит не определен!=> none
Ха-ха. Лол. В пхп нету такого понятия none, есть <?
if(empty($_POST['file']) or ($_POST['file']==""))
{
echo "File is not selected";
}
?>
А $_POST['file']=none будет только если в форме ввести none =)
mailbrush
01.02.2009, 23:06
вот,получилось!Спасибо
Если не веришь - попробуй запусти свой скрипт и не введи файл, и увидишь, что напишет He удалось скопировать а не Вы забыли указать файл...
Если не веришь - попробуй запусти свой скрипт и не введи файл, и увидишь, что напишет He удалось скопировать а не Вы забыли указать файл...
так и сделал)
Исправлюсь!
Спасибо!
Вот скрипт без создания текста на какойто картинке, как грил пашкелла:
<?php
$im = imagecreatetruecolor(520, 50); //создаем фон
$text = "Welcome!"; // текст
$font = "arial.ttf"; // шрифт (либо лежит в папке со скриптом, либо полный путь
$color = imagecolorallocate($im, 74, 74, 199); // цвет текста
imagettftext($im,20,0,30,30,$color,$font,$text); // собсна сама картинка
header("Content-type: image/jpeg"); // ставим контент тип - картинку
imagejpeg($im); // выводим картинку
?>
Вот, вроде в комментах...
Спасибо! ;)
mailbrush
01.02.2009, 23:52
Незачто, но для спасибо есть такая кнопочка зелененкая ± (http://forum.antichat.ru/reputation.php?p=1094015)
Установил денвер
какой пароль и юзер от Mysql ? м? сам не назначал и сам не знаю где посмотреть, на все потыкал в папке mysql в денвере
AkyHa_MaTaTa
02.02.2009, 00:06
2 diznt -
user - root
pass- ""
mailbrush
02.02.2009, 00:14
AkyHa_MaTaTa, немножко неправильно написал =) Некоторые могут не понять. Пароль не "" а пустой, т.е. его нет. ЗЫ: Не советую юзать денвер, установи лутше TopServer или Apache Web Server =)
AkyHa_MaTaTa
02.02.2009, 00:35
AkyHa_MaTaTa, немножко неправильно написал =) Некоторые могут не понять. Пароль не "" а пустой, т.е. его нет. ЗЫ: Не советую юзать денвер, установи лутше TopServer или Apache Web Server =)
А как ты указываешь в скриптах пустой пароль? '' или "".
AkyHa_MaTaTa "нет пароля" :D
Товариши,чет бошка под чечер не варет,ннужно чтобы число уножалось на число,пока не станет например меньше или равным другому числу,тоесть какбе цикл.Чтото я с for мутил,мутил,но особо хорошо не получилось,отказыаеться умножать,либо прыгает выше ответа нужного.
m0Hze
<?
$x = 1;
while($x < 100)
$x *= 10;
echo $x;
?>
Если требуеться выполнять действие ДО определенного условия, используеться цикл do while а не фор)
Ну говорю же,совсем не варит голова у меня :(
Нужно в отпуск мне :)
mailbrush
02.02.2009, 00:52
AkyHa_MaTaTa, ну если ты так углубляешся в пхп, то после каждой переменной надо ; ставить =)
нужно проверить есть ли подкл к БД то есть если не прошол конект к БД то высветилась не ошибка типа "Нету конекта с БД"
Как это сделать?
<?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password")
or die("Could not connect: " . mysql_error());
print ("Connected successfully");
mysql_close($link);
?>
mailbrush
02.02.2009, 01:13
Всмысле? Где ты без ; видел ?
Неск постов назад на 836 странице в конце.
ЗЫ: И перед каждой переменной $ ставится =\
ЗЫ: Не углубляйся в пхп, и не будем спорить, я просто объяснил "тугодумам".
Pashkela
02.02.2009, 01:13
<?
$servername=''; // Your MySql Server Name or IP address here
$dbusername=''; // Login user id here
$dbpassword=''; // Login password here
$dbname=''; // Your database name here
function connecttodb($servername,$dbname,$dbuser,$dbpasswor d)
{
$link=mysql_connect ("$servername","$dbuser","$dbpassword");
if(!$link){die("Could not connect to MySQL");}
mysql_select_db("$dbname",$link) or die ("could not open db");
}
connecttodb($servername,$dbname,$dbusername,$dbpas sword);
?>
Неск постов назад на 836 странице в конце.
ЗЫ: И перед каждой переменной $ ставится =\
ЗЫ: Не углубляйся в пхп, и не будем спорить, я просто объяснил "тугодумам".
аха, конечно ты не прав akyha сказал пароли а не привел скрипт.
В php
Null == false == 0 == "" == '' == !1 == !true
Ровно как в си :)
Подъеб не удался
mailbrush
02.02.2009, 01:32
diznt, переделаный от b3 только с формой...
<?php
error_reporting(0);
echo "<form method=post><table border=1><tr><td><b>Host:</b></td><td> <input name=\"host\" type=\"text\"> </td>
<tr><td><b>User:</b></td><td> <input name=\"user\" type=\"text\" value=\"\"></td>
<tr><td><b>Password:</b></td><td><input name=\"pass\" type=\"text\" value=\"\"></td></table>
<input type=submit value=Connect!><br /><br />";
if (isset($_POST['host']) && isset($_POST['user']) && isset($_POST['pass'])){
$link = mysql_connect($_POST['host'], $_POST['user'], $_POST['pass'])
or die("<b>Could not connect:</b> " . mysql_error());
echo ("<b>Connected successfully</b>");
mysql_close($link); }
?>
Null == false == 0 == "" == '' == !1 == !true
Ровно как в си
Ээ, по-моему в си равенства null, false, 0 с "" и '' не выполняются
Нужен подсчет колва символов в переменной.
Имеем $a = '11112222';
На выходе имеем $b = 8; - колво символов в $a
$b = strlen($a); // $a-string
echo $b;
Kaimi, да, но не для '' и "", не дописал
m0Hze, не понимаю зачем ты в роа хочешь, не зная даже элементарного.
strlen используй
astrologer
02.02.2009, 02:58
m0Hze
<?
$x = 1;
while($x < 100)
$x *= 10;
echo $x;
?><pre>
<?php
function compute($ini, $mul, $max)
{
$exp = log($max / $ini, $mul) >> 0;
return $ini * pow($mul, $exp);
}
echo compute(1, 10, 100) . "\n" .
compute(5, 11, 1e7);
Ээ, по-моему в си равенства null, false, 0 с "" и '' не выполняются
<?php
$a = null;
echo $a;
?>
<?php
$a = 0;
echo $a;
?>
В чем ошибка??
Пишет:
Warning: imagecolorallocate(): supplied argument is not a valid Image resource in G:\home\img.ru\www\end.php on line 25
Warning: imagettftext() expects parameter 1 to be resource, string given in G:\home\img.ru\www\end.php on line 26
Warning: imagejpeg(): supplied argument is not a valid Image resource in G:\home\img.ru\www\end.php on line 27
вот код:
<?php
// Подсоединяем функции и базу
include("db.php");
include("function.php");
// Проверяем переданые переменные
if (isset($_POST['vibor'])) { $vibor = $_POST['vibor'];}
if (isset($_POST['load'])) { $adres = $_POST['load'];}
if (isset($_POST['zak'])) { $zak = $_POST['zak'];}
if (isset($_POST['che'])) { $che = $_POST['che'];}
if (isset($_POST['name'])) { $namech = $_POST['name'];}
if (isset($_POST['text'])) { $text = $_POST['text'];}
// Текст к авотарке
$q = "";
if ($text != $q) {
$img = $adres; //создаем фон
$textput = $text; // текст
$font = "arial.ttf"; // шрифт (либо лежит в папке со скриптом, либо полный путь
$color = imagecolorallocate($img, 74, 74, 199); // цвет текста
imagettftext($img,20,0,30,30,$color,$font,$textput ); // собсна сама картинка
imagejpeg($img,"fotos/$namech"); // Сохроняем картинку
}
// Черный или цветной цвет
if ($che == 1) {
$s_file = $adres;
$razm = getimagesize($adres);
$widthch= $razm[0];
$heigthch = $razm[1];
$imch = imagecreatetruecolor($widthch,$heigthch);
imagejpeg($imch,"fotos/ch_".$namech);
imagedestroy($imch);
$r_file="fotos/ch_".$namech;
wb($s_file,$r_file);
$adres = "fotos/ch_".$namech;
}
// Запрос к базе для выбора картинки
$q = "SELECT * FROM data WHERE id='$vibor'";
$result1 = mysql_query($q,$db);
if (!$result1) {
exit(mysql_error());
}
if (mysql_num_rows($result1) > 0) {
// Создаем аватар
$myrow1 = mysql_fetch_array($result1);
$adres1 = "admin/".$myrow1['url'];
$mas = getimagesize($adres);
$mas1 = getimagesize($adres1);
$width = 215;
$heigth = $mas[1]+$mas1[1]+30;
$im = imagecreatetruecolor($width, $heigth);
$im1 = imagecreatefromjpeg($adres);
$im2 = imagecreatefromjpeg('logo.jpg');
$im3 = imagecreatefromjpeg($adres1);
$name = $myrow1['name'];
imagecopy($im, $im2, 0, $mas[1], 0, 0, 215, 30);
imagecopy($im, $im1, 0, 0, 0, 0, 215, $mas[1]);
imagecopy($im, $im3, 0, $mas[1]+30, 0, 0, 215, 350);
// Закруглёные углы
if ($zak == 1) {
ugolki ($im);
}
// Сохроняем и выводим
imagejpeg($im,"avatar/$name");
imagedestroy($im);
}
printf("<img src='avatar/$name' alt=''/><br><a href='get.php?file=avatar/$name'>save</a>");
?>
вместо
$img = $adres; //создаем фон
надо
$img = imagecreatefromjpeg($adres);
или другие функции imagecreatefrom* в зависимости от типа рисунка
$img = $adres; //создаем фон
не правильный параметр
imagettftext($img,20,0,30,30,$color,$font,$textput ); // собсна сама картинка
не правильная переменная $img, она является стрингом, а должна быть картинка
imagejpeg($img,"/fotos"); // выводим картинку
тоже самое.
--
тебе надо тут почитать
http://www.php.net/manual/ru/ref.image.php
вместо
$img = $adres; //создаем фон
надо
$img = imagecreatefromjpeg($adres);
или другие функции imagecreatefrom* в зависимости от типа рисунка
Спасибки работает ты прав!
159932
Внимательно пост посмотри я исправил!
oRb
А почему он рускими буквами не пишет???
Надпись Получается как будто в другой кодировке!!
Парни, помогите плиз!
Мне нужно с фтп от сервера перекинуть данные на фтп другого сайта :rolleyes:
mailbrush
02.02.2009, 18:13
Уже не надо =). Юзай скрипт от пашкеллы
m0nsieur
02.02.2009, 18:35
2 MaTpOc - cкрипт от Pashkela в полезных статьях ftp2ftp - http://forum.antichat.ru/threadnav65761-60-10.html
oRb
А почему он рускими буквами не пишет???
Надпись Получается как будто в другой кодировке!!
$text = iconv("windows-1251","utf-8", $text);
Если не поможет, меняй шрифт
mixkorshun
02.02.2009, 18:41
Парни, помогите плиз!
Мне нужно с фтп от сервера перекинуть данные на фтп другого сайта :rolleyes:
самое простое что накатал по быстрому... должно работать
<?php
$server_source = "source.server.com";
$server_dest = "dest.server.com";
$remotefile = "file.txt";
$hFtp = ftp_connect($server_source, 21);
ftp_login($hFTP, "username", "password");
$hFtp2 = ftp_connect($server_dest, 21);
ftp_login($hFTP2, "username2", "password2");
//соединились и залогинились...
//получаем файл и сохраняем у себя в "remotefile.dat"
ftp_get($hFTP, "remotefile.dat", $remotefile, FTP_BINARY);
//грузим на 2ой ftp
ftp_put($hFTP, $remotefile, "remotefile.dat", FTP_BINARY);
//закрываем соединения
ftp_close($hFTP);
ftp_close($hFTP2);
?>
+ru.php.net/manual/ru/book.ftp.php (http://ru.php.net/manual/ru/book.ftp.php) надеюсь пригодится
geforce была такая трабла.
помогло только это.
function toUnicodeEntities($text, $from="w")
{
$text = convert_cyr_string($text, $from, "i");
$uni="";
$len=strlen($text);
for($i=0; $i<$len; $i++)
{
$char=$text{$i};
$code=ord($char);
$uni .= ($code>175)? "&#" . (1040+($code-176)) . ";" : $char;
}
return $uni;
}
Всем спасибо!
Многие мне советовали phpDesigner 2008, но я в нем встретил такую проблему, у меня в браузере русские буквы отображаются так 10Ñóììà âñåõ ÷èñåë îò 1 äî 100 ðàâíà - 5050
Как исправить?
geforce была такая трабла.
помогло только это.
function toUnicodeEntities($text, $from="w")
{
$text = convert_cyr_string($text, $from, "i");
$uni="";
$len=strlen($text);
for($i=0; $i<$len; $i++)
{
$char=$text{$i};
$code=ord($char);
$uni .= ($code>175)? "&#" . (1040+($code-176)) . ";" : $char;
}
return $uni;
}
Не работает ((((
А как проверить переную с текстовым содержимым на наличие руских или английских букв??
if(preg_match('#^[a-z]+$#i',$var))
echo 'english';
у меня эта функция отлично работает.
регуляркой ? [a-z][A-Z]
Перейду сразу к делу.
Имеем:
$a = '100';
$b = '9';
Нужна функция,или другая реализаця следющего:
$a должна умножаться сама на себя,пока не станет равна 108,тоесть больше $b,но только на 1-ну $a,тоесть если переменная $b = 91,$a = 9,я должен получить $c = 99.
<?php
$a = 2;
$b = 333;
do{
$a *= $a;
}while($a <= $b);
echo $a;
Pashkela
02.02.2009, 19:21
9x9 = 81
81x9 = 729
а теперь скажи условие задачи по русски:)
Есть такая проблема. Значит есть у меня файл который нужно прочитать, удалить повторки а записать заново, но по условию его нельзя читать сразу всего. То есть прочесть функцией file а потом убрать все повторки через array_unique не получеться.
Как сделал я
<?php
$handle = fopen("res.txt", "r");
$handle2 = fopen("result.txt", "a+");
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
echo "buffer=".$buffer."<br>";
do {
$buf = fgets($handle2, 4096);
echo "buf=".$buf."<br>";
if($buf != $buffer)
fwrite($handle2,$buffer);
} while (!feof($handle2)) ;
}
fclose($handle);
fclose($handle2);
?>
но выходит какой то глюк. Второй цикл замыкаеться и пишеться бесконечно только первая строка, на проверку не обращает внимания.
Скажите что сделано не так, или наметьте другой путь.
Заранее спасибо.
Пипл,как считать из файла последовательность строк,преобразовав в массив ? Вот,например:
Раз
два
три
четыре
пять
Пробовал по всякому,вот только у меня всё это оказывалось в одном элемент массива))
Преобразовать в массив strings,к примеру:)
mixkorshun
02.02.2009, 19:32
blaga
как понял то у тебя 2 вложеных цикла.. причем в первом ты читаешь первую строку, а потом все остальные с ней сравниваешьи пишешь ее.. отсюда и эффект
mixkorshun
02.02.2009, 19:33
сейчас набросать попробую рабочий
mixkorshun
02.02.2009, 19:40
<?php
$handle = fopen("res.txt", "r");
$handle2 = fopen("result.txt", "a+");
$buffer = fgets($handle, 4096);
fwrite($handle2, $buffer);
while (!feof($handle)) {
$buf= fgets($handle, 4096);
if($buf == $buffer)
{
} else
{
$buffer=$buf;
fwrite($handle2, $buffer);
}
}
fclose($handle);
fclose($handle2);
?>
должно работать. с тебя + )) если не работает отпиши в личку
Велемир file()
mixkorshun интерес в том что бы взять первую строку и проверить со всеми теми что уже в файле есть если такой строки нет то записать.
но почему то первый цикл не перекручивает на вторую строку...
$a = array();
$fp = fopen("фаил.txt","r");
while(!feof($fp)) {
$a[] = fgets($fp,4096);
}
print_r($a);
?>
Вроде так...
работать то она работает, только вот повторки не удаляет. такого эффекта я тоже достиг. :(
велемир перечитай условие. мне нельзя совать файл в массив.
mixkorshun
02.02.2009, 19:47
Велемир file()
mixkorshun интерес в том что бы взять первую строку и проверить со всеми теми что уже в файле есть если такой строки нет то записать.
но почему то первый цикл не перекручивает на вторую строку...
тебе нужно чтобы строка вообще нигде в тексте не повторялась?? жди тогда, ща напишем
Pashkela
02.02.2009, 19:48
2 blaga:
slovar.ini
Результирующий файл:
resultus.txt
--------------------------------
Обрабатываемый файл:
1.txt
--------------------------------
Размер буфера:
4096
slovar.php
<?php
global $len_buffer;
$ipArray = array_map("trim", file("slovar.ini")); //Файл настроек
$res = trim($ipArray[1]);
$file = trim($ipArray[4]);
$len_buffer = trim($ipArray[7]);
$size2 = filesize($file);
echo "Result file file - $res\n";
echo "Adding file - $file, size - $size2 bytes\n";
echo "Buffer - $len_buffer bytes\n";
echo "Start, wait please...\n";
echo "---------------------------------------\n";
Uslovar ($file,$res);
/*Функция поиска повторов строк */
function Ustr ($fp, $str)
{
global $len_buffer;
fseek($fp,0);
while (!feof ($fp)) {
$temp = trim(fgets($fp,$len_buffer));
if ($str == $temp)
return false;
}
return true;
}
/*Функция занесения уникальных слов в результирующий файл*/
function Uslovar ($slovar1,$res)
{
global $len_buffer;
$date = date("d.m.Y H:i");
echo "$date....Start.Wait please.....\n";
$result = fopen($res, 'w+') or die ("Can't open file $res for writing");
$size = filesize ($slovar1);
$fp = fopen ($slovar1, 'r') or die ("No such file - $slovar1");
echo "Size of file " .$size. " bytes\n";
while (!feof ($fp)) {
$temp = trim (fgets ($fp, $len_buffer));
if (Ustr ($result, $temp)) {
fseek ($result, 0, SEEK_END);
fwrite ($result, $temp . "\r\n");
}
}
fclose ($fp);
fclose ($result);
$size1 = filesize ($res);
echo "All results saved in $res ($size1 bytes)\n";
}
?>
mixkorshun
02.02.2009, 19:54
работать то она работает, только вот повторки не удаляет. такого эффекта я тоже достиг. :(
велемир перечитай условие. мне нельзя совать файл в массив.
$buffer = fgets($handle, 4096);
echo "buffer=".$buffer."<br>";
fwrite($handle2,$buffer);// он пустой файл читает иначе!!!!
вроде как в этом ошибка была.... но неуверен... он у тебя пустой файл читать начинал(handle2)
<?php
$a = 2;
$b = 333;
do{
$a *= $a;
}while($a <= $b);
echo $a;
Совсем не то.Мне нужно,чтобы переменная $a умножалась сама на себя,пока она не становиться равной,либо больше $b.Больше только на 1-ну $a
Тоесть.
$a = 9;
$b = 100;
Получиться
$c = 108;
Минимальное число,которое получаеться при умножении $a саму на себя,и больше $b.
А если a = 11 ? Бред несешь, зачем это нужно?
Ой пилять :(
В том то и разница,что числа могут быть разные.
$a = 9,$b =100, $a нужно умножать,пока она не станет =,или больше $b.
9*9,9*10,9*11,9*12 - ты это имеешь ввиду ?
Если умножать само на себя,то 9*9,10*10,11*11 и т.д.
Я тя чёт не догнал(
<?php
$a = 9;
$b = 100;
while ($a <=$b) {
$a = $a*$a;
$a = $a+1;
if($a <= $b) {
echo "<br>$a</br>";
break;
}
}
?>
Имхо если знак поменять,то бред получится ))))
То что чак написал, перед вывдом еще раз на $a умножь
НУ к вам еще объяснить то :D
Все элементарно :)
Так,объясню подругому.
Имеем число $a = 2 и $b = 5
Задача,умножать число $a пока оно не станет больше $b,как только оно стало больше выводить результат,в нашем случае 6.
Число $a умнаеться так
$a = $a*$a; - 4
$a = 4*$a; И так далее,н естевственно не таким дебильным способом Ж)
НУ к вам еще объяснить то :D
Все элементарно :)
Так,объясню подругому.
Имеем число $a = 2 и $b = 5
Задача,умножать число $a пока оно не станет больше $b,как только оно стало больше выводить результат,в нашем случае 6.
Число $a умнаеться так
$a = $a*$a; - 4
$a = 4*$a; И так далее,н естевственно не таким дебильным способом Ж)
$a=2;
$b=3;
while ($a<$b) $a*=$a;
echo $a;
Если правильно тебя понял то так
m0Hze ты неадекватен 4*2!=6 f 4*2=8
Pashkela
02.02.2009, 21:09
m0Hze
2*2=4
4*2=8
6 ну никак не будет, выкини свой калькулятор
astrologer
02.02.2009, 21:09
$a=2;
$b=3;
while ($a<$b) $a*=$a;
echo $a; <?php
$a = 9;
$b = 100;
while ($a <=$b) {
$a = $a*$a;
$a = $a+1;
if($a <= $b) {
echo "<br>$a</br>";
break;
}
}
?><?php
$a = 2;
$b = 333;
do{
$a *= $a;
}while($a <= $b);
echo $a;Эта задача решается без цикла
Если без цикла тогда рекурсией
function kraken_YMHbIN($a,$b)
{
$a*=$a;
if ($a<$b) kraken_YMHbIN($a,$b);
return $a
}
В общем забиваем на вопрос выше,сделал в 100 раз проще в 1 операцию,просо я хотел сделать выгоду из этой операции,какбе сложив сразу 2 в одну.
Теперь другой вопрос.
Имееем строку.
$a = '2321';
Определяем сколько там символов,и делим пополам строку,создавая 2 переменные
$a = 23;
$c = 21;
Но вот если в строке $a = '23233'; как разделить чтобы в одну помещалось 3 символа,в дургую 2. 5 символов это пример,их может быть и 15,тоесть нужноделить нечетные числа и развивать в 2 переменные.Помогайте :))
Я плачу))Чак уже дал ответ, я дописал и проверил)
В общем забиваем на вопрос выше,сделал в 100 раз проще в 1 операцию,просо я хотел сделать выгоду из этой операции,какбе сложив сразу 2 в одну.
Теперь другой вопрос.
Имееем строку.
$a = '2321';
Определяем сколько там символов,и делим пополам строку,создавая 2 переменные
$a = 23;
$c = 21;
Но вот если в строке $a = '23233'; как разделить чтобы в одну помещалось 3 символа,в дургую 2. 5 символов это пример,их может быть и 15,тоесть нужноделить нечетные числа и развивать в 2 переменные.Помогайте :))
Это тебне для чего...что то мне напоминает задания для того чтоб попасть в ROA я ошибаюсь?
astrologer
02.02.2009, 21:25
Если без цикла тогда рекурсией
function kraken_YMHbIN($a,$b)
{
$a*=$a;
if ($a<$b) kraken_YMHbIN($a,$b);
return $a
}Цитирую (https://forum.antichat.ru/showpost.php?p=1094492&postcount=8378) сам себя с тривиальной правкой =(
<pre>
<?php
function compute($ini, $mul, $max)
{
$pow = ceil(log($max / $ini, $mul));
return $ini * pow($mul, $pow);
}
echo compute(1, 10, 100) . "\n" .
compute(5, 11, 1e7);
Не,задание я по другому буду делать,если ты про числа где считать.
А вот деление строки на части - это да,для него.Я просто некак не пойму,как раздеолить нечетное кол-во символов.
Не,задание я по другому буду делать,если ты про числа где считать.
А вот деление строки на части - это да,для него.Я просто некак не пойму,как раздеолить нечетное кол-во символов.
В общем зря вы это писали,яя как уже сказал это сделал немного проще.Вот только как побить надвое строку с нечетным колвом символов? По 1 думаю побить,но больно много переменных,да и неудобно в БД заносить.
дели по парно когда окажется что последнее число непарная прицепляй его к предыдущему
Убийство,в мозг приходит только одна идея:
Выдерать первые например 5 символов,а все что осталось в другую переменную пихать.По другому я чтото никак не придумаю :(
Пвроде придумал извращенский способ.
Допустим у нас 27 сиволов. Делим на 2,получаем 13.5.Далее,выдираем у одной переменной .5 и прибалвяем к другой,получаем 14,и13. Вроде как все.Пошел проверять...
Вот написал для тебя код надеюсь сам разберешься.
После выполнения кода в массиве $b находятся все числа
$a='1234567';
$len=(int)(strlen($a)/2)
for ($i=0;$i<$len;$++) $b[$i]=substr($ch1,$i*2,2);
if ((strlen($a) % 2)!=0) $b[$i].=$a[$i+1];
Деление строки пополам
function divide($str)
{
$out=array();
$len=(int)strlen($str)/2;
$out[]=substr($str,0,$len);
$out[]=substr($str,$len);
return $out;
}
$in='abcdefg';
print_r(divide($in));
kraken вроде на каждые два символа не просили делить, и у вас опечатка в инкременте цикла
mailbrush
02.02.2009, 22:47
Никак не могу понять, почему не енкодит то, что после md5
<?php
echo '<title>H@SH Simple EncodeR</title></title><form method="post">
<table border=1><tr><td><b>Слово:</b></td><td> <input name="pass" type="text" value=""> </td>
<tr><td><b>Соль:</b><br /><font size=1>Optionally</font></td><td> <input name="salt" type="text" value=""> </td>
<tr><td><b>Тип:</b></td><td>
<select size="11" name="type">
<option checked value="hex">HEX Encode</option>
<option value="hexde">HEX Decode</option>
<option value="base64">Base64 Encode</option>
<option value="base64de">Base64 Decode</option>
<option value="sha1" name=type>sha1</option>
<option value="md5">MD5</option>
<option value="md5(md5($pass))">md5(md5($pass))</option>
<option value="md5($pass.$salt)">md5($pass.$salt)</option>
<option value="md5(md5($pass.$salt))">md5(md5($pass.$salt))</option>
<option value="md5(md5($salt.$pass))">md5(md5($salt.$pass))</option>
<option value="md5(md5($pass).$salt)">md5(md5($pass).$salt)</option>
</select> </td>
<tr><td><input type="submit" value="Send"></td> </table>
</form>';
if (isset($_POST['pass']) && $_POST['type'])
{ $pass=$_POST['pass'];
$type=$_POST['type'];
$salt=$_POST['salt'];
if ($_POST['type']==hex){$r=hexdec($pass);}
if ($_POST['type']==hexde) {$r=dechex($pass);}
if ($_POST['type']==base64){$r=base64_encode($pass);}
if ($_POST['type']==base64de){$r=base64_decode($pass);}
/*Начиная с этого*/if ($_POST['type']==md5){$r=md5($pass);}
if ($_POST['type']==md5(md5($pass))){$r=md5(md5($pass));}
if ($_POST['salt']){
if ($_POST['type']==md5($pass.$salt)){$r=md5($pass.$salt);}
if ($_POST['type']==md5(md5($salt.$pass))){$r=md5(md5($salt.$pass)); }
if ($_POST['type']==md5(md5($pass).$salt)){$r=md5(md5($pass).$salt); }
if ($_POST['type']==sha1){$r=sha1($pass);}/*Заканчивая этим ничего не хешируется...*/}else{$r="Вы не ввели соль!";}
echo "<br><b>Result:</b><br><textarea cols=40 rows=15>$r</textarea>";;}
?>
mailbrush
02.02.2009, 23:05
а у самого по две , для надежности?
Это ошибка, но скрипт она не меняет =\.
А так - сенк, ша попробую...
ANTIJABBER
02.02.2009, 23:07
Привет Всем! Ребят... нужен простой граббер с myip.ru, что бы вырезал сам ИП... заранее спасибо.
mailbrush switch-case не модно уже?
Привет Всем! Ребят... нужен простой граббер с myip.ru, что бы вырезал сам ИП... заранее спасибо.
Тебе нужно узнавать ип-адрес зашедшего на страницу? $_SERVER['REMOTE_ADDR']
ANTIJABBER
02.02.2009, 23:29
Тебе нужно узнавать ип-адрес зашедшего на страницу? $_SERVER['REMOTE_ADDR']
да не, это знаю =) у меня просто ADSL... адрес - динамика... вот так узнавать буду с телефона какой ИП у компа... =)
Парсер myip:
<?php $page = file_get_contents('http://myip.ru/'); preg_match_all('|<TR><TD bgcolor=white align=center valign=middle>(.+)</TD></TR>|',$page,$result); echo $result[1][rand(0,0)]; ?>
ANTIJABBER
02.02.2009, 23:31
В данный момент интересует вопрос... как записать файл который находится на фтп? ЗЫ: к фтп полный доступ... =) а то пробовал... чего-то не получается... :-[ может примерчик подкинете? *смайлик покраснения*
ANTIJABBER
http://www.softtime.ru/bookphp/gl9_1.php
Вообщем нужен скриптец :)
есть файл, допустим keywords.txt 50к строк
щщщ
шшш
ггг
...
мне нужно чтобы скрипт выводил 10 строк, по 3 кея из файла рандомно через запятую
ыыы, ццц, ууу
ннн, ммм, ссс
...
заранее большое спасибо! с меня + ;)
exaid $arr=file('keywords.txt');
$c=count($arr);
for ($i=1;$i<10;$i++) echo $arr[rand(0,$c)].', '.$arr[rand(0,$c)].', '.$arr[rand(0,$c)]."\r\n"
mailbrush
02.02.2009, 23:49
mailbrush switch-case не модно уже?
Почему же нет? Я сейчас свой квест пишу именно на этом, но это движок. А для обычного хеш-енкодера этого не надо.
mailbrush дело не в том нужно или нет делов засирать код или нет =)
Почему же нет? Я сейчас свой квест пишу именно на этом, но это движок. А для обычного хеш-енкодера этого не надо.
Хоть стой,хоть падай.
0verbreaK
03.02.2009, 00:11
Нужна реализация или скрипт, который будет принимать каталог со страницами, будет выдывать ссылки на эти файлы
Chrek625
03.02.2009, 03:07
Доброго всем времени суток.
Подскажите пожалуйста заступорился на одной баге и не могу понять как исправить:
ошибка Cannot re-assign $this in Shop.php
а вот фрагмент с переменной $this
function get($objectId=null) {
if ($objectId == 0) return false;
if (parent::get($objectId)) {
// echo "in get clinic, $objectId, ".get_class($this)."<br>";
if ($this->getVariable('type') == 'comission' and get_class($this)!='comissionshop') {
$newShop = new ComissionShop();
if ($newShop->get($objectId)) {
$this = $newShop;
$this->getCrncyDst();
return true;
}
return false;
}
подскажи как это исправить просто моих знаний не хватает что бы разобраться с этим... буду боагодарен любой помощи или подсказке...
Зарание большое спасибо.
groundhog
03.02.2009, 03:46
Хорошо бы если бы ты написал строку, где ошибка возникает...
AkyHa_MaTaTa
03.02.2009, 04:11
Доброго всем времени суток.
Подскажите пожалуйста заступорился на одной баге и не могу понять как исправить:
ошибка Cannot re-assign $this in Shop.php
а вот фрагмент с переменной $this
function get($objectId=null) {
if ($objectId == 0) return false;
if (parent::get($objectId)) {
// echo "in get clinic, $objectId, ".get_class($this)."<br>";
if ($this->getVariable('type') == 'comission' and get_class($this)!='comissionshop') {
$newShop = new ComissionShop();
if ($newShop->get($objectId)) {
$this = $newShop;
$this->getCrncyDst();
return true;
}
return false;
}
подскажи как это исправить просто моих знаний не хватает что бы разобраться с этим... буду боагодарен любой помощи или подсказке...
Зарание большое спасибо.
Мне кажеться что вот так делать не стоит
$this = $newShop;
groundhog
03.02.2009, 04:13
по-моему такая конструкция хляла в ПХП4, но в ПХП5 уже такое не пройдёт...
ппц Chrek625 , ты если код выкладуешь то расставляй хотя бы все скобки на месте нормально, а то ужас просто, спросил одно, а в коде куча другого неправильно
function get($objectId=null) {
if ($objectId == 0) return false;
if (parent::get($objectId))
{
echo "in get clinic, $objectId, ".get_class($this)."<br>";
if ($this->getVariable('type') == 'comission' and get_class($this)!='comissionshop') {
$newShop = new ComissionShop();
if ($newShop->get($objectId)) {
$this -> $newShop;
$this->getCrncyDst();
return true;
}
return false;
}
}
}
вот так должно канать
AkyHa_MaTaTa
03.02.2009, 04:50
$this -> $newShop - эта операция безсмыслена.
2 groundhog по моему этого и в 4 нельзя было делать, в переменой $this содержиться сылка на текуший обьект, наверно нужно выложить весь обьект что бы не гадать.
Доброго всем времени суток.
--------------------------------------
вот один случай был у меня мне нужно было чтоб кто-нить мне мыло взломал ну я и обратился к одному челу накатал ему письмецо со своей просьбой ,буквально и не прошло даже 5 -минут всплывает окно на моем браузере и на браузере написано мол пиши на аську и аськин номер примерно так ICQ:123456789 как он это сделал вопрос?
Chrek625
03.02.2009, 05:17
Ну вообщето это только часть кода полностью код содержит 2400 строк так что скобки тут ни причём RekRut если ты вдруг не понял.
Ошибка так раз и заключается в строчке $this = $newShop;
AkyHa_MaTaTa вы сказали что так не стоит делать а как лучше? вернее правильней?
Просто как я уже упоминал я только пытаюсь исправить ошибки этой игры и пока что застрял только на это ошибке которая у меня вызвала больше всего затруднение .
Chrek625
03.02.2009, 05:22
AkyHa_MaTaTa вот полный скрипт если не сложно посмотрите пожалуйста его и подскажите как мне исправить эту ошибку с $this = $newShop;
http://ifolder.ru/10356035
ANTIJABBER
03.02.2009, 10:50
С помощью какой функции можно запустить bat файл с выводом? т.е. что бы в винде отображалась бат консоль)) с exec юзал... выполняет функции, но самого окошка в винде нету... :(
помогитееЕ)))
Nightmarе
03.02.2009, 11:31
как на php удалить все файлы из директории lol кроме двух файлов index.php и .htaccess
???
if(isset($_POST['edit'])){ ?>
<table width='100%' border='1' align='center' cellpadding='0' cellspacing='0'>
<form id="form1" name="edit_users" method="post" action="">
<tr><td><center><input name="fio_n" type="text" id="textfield" size="55" value="<? echo $_POST['fio'];?>"/></center></td>
<td><center><input name="birth" type="text" id="textfield2" value="<? echo date_rotate($_POST['birth']);?>"/></center></td>
<td><center><input name="tel" type="text" id="textfield3" value="<? echo $_POST['tel'];?>"/></center></td>
<td><center><input name="mobile" type="text" id="textfield4" value="<? echo $_POST['mobile'];?>"/></center></td>
<td><center><input name="email" type="text" id="textfield5" size="30" value="<? echo $_POST['email'];?>"/></center></td>
<td><input type='hidden' name='id' value='<? echo intval($_POST['id']);?>'><input type='submit' name='save' id='save' value='редактировать' /></td> </tr> </form> </table><br><br>
<? } if(isset($_POST['save'])){ $birth=date_rotate($_POST[birth]);
$db->query("UPDATE users SET `fio` = '$_POST[fio_n]',`birth` = '$birth',`tel` = '$_POST[tel]',`mobile` = '$_POST[mobile]',
email` = '$_POST[email]' WHERE `user_id` = '$_POST[id]'");
########AUDIT################
$db->query("INSERT INTO audit set
`date`=now(),`time`=now(),`user_id`='$_SESSION[user_id]',
`table`='users',`column`='fio',`pk`='$_POST[id]',
`oldvalue`='$fio_o',`newvalue`='$_POST[fio_n]'");
Есть такая форма.
При нажатии ред. в текстовые поля выводятся переменные $_POST['fio'] и т.д. я меняю значения этих полей и уже при нажатии save заношу измененные данные в таблицу. т.е. в Таблицу идет $_POST['fio_n'] как мне тудаже добавить и старое значение которое было??? $_POST['fio'] не катит....что то я совсем загнался
как на php удалить все файлы из директории lol кроме двух файлов index.php и .htaccess
???
Попробуй так:
function deleteDir($path)
{
$path = (substr($path,-1)=='/') ? $path:$path.'/';
$dh = opendir($path);
while ( ($item = readdir($dh) ) !== false)
{
$item = $path.$item;
if ( (basename($item) == "..")
|| (basename($item) == ".")
|| (basename($item) == "index.php")
|| (basename($item) == ".htaccess"))
continue;
$type = filetype($item);
if ($type == "dir")
deleteDir($item);
else
unlink($item);
}
closedir($dh);
rmdir($path);
}
как на php удалить все файлы из директории lol кроме двух файлов index.php и .htaccess
???
<?php
$dir = "/tmp/";
// Открыть заведомо существующий каталог и начать считывать его содержимое
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
print "Файл: $file : тип: " . filetype($dir . $file) . "\n";
delete($dir.$file);
}
closedir($dh);
}
}
?>
http://ru2.php.net/opendir
Доброго всем времени суток.
--------------------------------------
вот один случай был у меня мне нужно было чтоб кто-нить мне мыло взломал ну я и обратился к одному челу накатал ему письмецо со своей просьбой ,буквально и не прошло даже 5 -минут всплывает окно на моем браузере и на браузере написано мол пиши на аську и аськин номер примерно так ICQ:123456789 как он это сделал вопрос?
может он узнал твой ip и залил на него щелл а потом радмин и потом уже что нить натворил в твоём браузере ,хотя. . . .
НУ вообще такое сделать можно
что такое dle? часто слышу это выражение
Iceangel_
03.02.2009, 12:13
что такое dle? часто слышу это выражение
DataLife Engine
dle-news.ru
BlackSilver
03.02.2009, 12:29
Доброго всем времени суток.
--------------------------------------
вот один случай был у меня мне нужно было чтоб кто-нить мне мыло взломал ну я и обратился к одному челу накатал ему письмецо со своей просьбой ,буквально и не прошло даже 5 -минут всплывает окно на моем браузере и на браузере написано мол пиши на аську и аськин номер примерно так ICQ:123456789 как он это сделал вопрос?
Щас угадаю.
У тебя почта на движке gmail и в это время ты проверял почту. Он послал тебе сообщение по Jabber протоколу (ведь аккаунт на гмейле также джаббер аккаунт) и веб интерфейс гмейла тут же показал его окошком как окно чата.
Так?
что, кроме break, может остановить выполнение цикла?
Корвин я обычно пишу функцию а там можно использовать return 0;
sleep но он притормаживает на опред время. нужно если хочешь снизить нагрузку. потом цикл снова запуститься.
что, кроме break, может остановить выполнение цикла?
выключение сервера/апача, die(),exit() ибо на сколько мне известно, синониму break нет.
просто у меня странность какая то, цикл должен повторится 12 раз, а он на 4ом шаге останавливается и все, ща скину ссылку на код
http://b-power.ru/source.txt
вот там $num_children=12, я там вывел $i, она тока 4 насчитывает и все
мб
if ($children[$i]->template == $tmpl->filename) {
$template = $tmpl->title;
break;
}
больше прерывания цикла там нету..
с первого просмотра обнаружил что скобки закрывающей недостает.
Ну посмотри вот этот код......он у тебя на 4 ходе прерывает наверное
if ($children[$i]->template == $tmpl->filename) {
$template = $tmpl->title;
break;
}
foreach ($templates->content_templates as $tmpl) {
if ($children[$i]->template == $tmpl->filename) {
$template = $tmpl->title;
break;
}
}
этот break внутренний цикл прерывает, и скобки там в норме и у if и у foreach
какой именно скобки?
имеется ввиду закрытие цикла.
имеется ввиду закрытие цикла.
в самом низу последняя строчка, там скобка закрывающая
в самом низу последняя строчка, там скобка закрывающая
for ($i=0; $i<$num_children; $i++) {
echo '-'.$i.'-';
$children[$i] = new Ax_Content($children_mass_id[$i][id_content]);
$is_active = $children[$i]->status==STATUS_PUBLISHED ? "enabled" : "disabled";
$is_cache = $children[$i]->cache==STATUS_CACHE ? "enabled" : "disabled";
$is_cachetime = $children[$i]->cache==STATUS_CACHETIME ? "enabled" : "disabled";
//$children[$i]->mtime = stamp2date($children[$i]->mtime);
list($time1, $time2) = explode(" ",$children[$i]->mtime);
list($year,$month,$day) = explode("-",$time1);
list($hour,$minute,$second) = explode(":",$time2);
$children[$i]->mtime = $day.'.'.$month.'.'.$year.' '.$hour.':'.$minute;
// $children[$i]->ctime = stamp2date($children[$i]->ctime);
list($time1, $time2) = explode(" ",$children[$i]->ctime);
list($year,$month,$day) = explode("-",$time1);
list($hour,$minute,$second) = explode(":",$time2);
$children[$i]->ctime = $day.'.'.$month.'.'.$year.' '.$hour.':'.$minute;
$viewurl = ($children[$i]->redir_url)?$children[$i]->redir_url:($current_url.$children[$i]->name."/");
$template = "<font color=\"#ff0000\">ОШИБКА: шаблон не найден!</font>";
foreach ($templates->content_templates as $tmpl) {
if ($children[$i]->template == $tmpl->filename) {
$template = $tmpl->title;
break;
}
}
?>
кури бамбук .. тут нет скобки, хотя без неё , фор у тебя просто бы не запустился .....
если if совпадает то break и срабатывает. Или возможно не срабатывает условие цикла, и он выходит.
159932, ну ты даешь, чо не знаешь что можно писать так
<?
if(бла бла бла)
{
?>
обычный html
<?
}
?>
так же и с циклом, он заканчивается на самой нижней строчке, открой в нотпад++ и посмотри пары скобок, так что сам кури чо хочешь=)
весь код который там есть находится внутри цикла, который начинается на первой строчке и заканчивается на последней
HELP http://forum.antichat.ru/showpost.php?p=1096632&postcount=8458
159932, ну ты даешь, чо не знаешь что можно писать так
<?
if(бла бла бла)
{
?>
обычный html
<?
}
?>
так же и с циклом, он заканчивается на самой нижней строчке, открой в нотпад++ и посмотри пары скобок, так что сам кури чо хочешь=)
весь код который там есть находится внутри цикла, который начинается на первой строчке и заканчивается на последней
мне почемуто стукнуло в голову, что фор у тебя до первого окончания скрипта :D звиняй)
ну раз так, то проверь прирывание о котором говорили тебе уже 3 человека включая меня.
svesve, записывать старое значение в другое поле БД
проверь прирывание о котором говорили тебе уже 3 человека включая меня.
если ты о единсвенном break то я уже написал он прерывает цикл foreach а не for
svesve, записывать старое значение в другое поле БД
дело в том что я так и записываю в разные поля НО
не сохраняется щначения предыдущего ПОСТА хотя я его присвоил пременной
svesve Добавить скрытое поле fio которое не будет редактироваться || использовать сессионные переменные || добавить в sql UPDATE-запрос `fio_old`=`fio`
Все переменные после завершения вывода страницы - высвобождаются, и в преведенном вами коде, я, например, не увидел где вы "сохраняете в переменной" значение предыдущего ПОСТа.
Корвин Код не читабелен почти. И непонятно где задается $num_children. Попробуйте внутри цикла выводить не только $i но и переменную условия, возможно внутри класса Ax_Content вы ее меняете.
$num_children=12;
for ($i=0; $i<$num_children; $i++) {
echo '<hr/>'.$i.'-'.$num_children.'<hr/>'; continue;
//и т.д. ваш код
Это естественно вывело все 12 строчек. Аналогично попробуйте c/без continue; для вашего класса
Корвин убери break и отпиши (По скрипту вижу что это неповлияет на результат а только на время выполнения.)
Gifts, уже выводил $num_children на каждом шаге , идет 0 - 12 - 1 - 12 - 2 - 12 - 3 - 12 - 4 и потом обрубается
kraken, break пробовал убирать, никакого эффекта
Корвин Вместо $num_children в файле напишите число большее 4. Если все равно будет останавливаться, то перемещайте строку
echo '<hr/>'.$i.'-'.$num_children.'<hr/>'; вниз по коду и ищите после какого вызова остановка (ака будет тройка вместо четверки последним результатом)
Chrek625
03.02.2009, 19:03
знатаки подскажите мне по моей проблеме
Доброго всем времени суток.
Подскажите пожалуйста заступорился на одной баге и не могу понять как исправить:
ошибка Cannot re-assign $this in Shop.php
а вот фрагмент с переменной $this
function get($objectId=null) {
if ($objectId == 0) return false;
if (parent::get($objectId)) {
// echo "in get clinic, $objectId, ".get_class($this)."<br>";
if ($this->getVariable('type') == 'comission' and get_class($this)!='comissionshop') {
$newShop = new ComissionShop();
if ($newShop->get($objectId)) {
$this = $newShop; <<-- строчка в которой ошибка
$this->getCrncyDst();
return true;
}
return false;
}
подскажи как это исправить просто моих знаний не хватает что бы разобраться с этим... буду боагодарен любой помощи или подсказке...
Зарание большое спасибо.
http://ifolder.ru/10356035 полный файл.
preda1or
03.02.2009, 19:15
Chrek625
уже обсуждалось раньше, ищи в пред. постах
http://bugs.php.net/bug.php?id=34358
P.S.
а вообще:
http://www.google.ru/search?hl=ru&newwindow=1&q=Cannot+re-assign+%24this+in++PHP&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=&aq=f&oq=
P.P.S. из первой цитаты
NOTE: This is about PHP 5. It might have worked in PHP 4 but it does not
and will not work in PHP 5.
self::$this - возвратить себя
&self::$this - возвратить себя по ссылке
__CLASS__ - имя класса
Уважаемое сообщество помогите плз вот код суть в том что есть массив с набором строк нужно проверить сколько включений заданного слова входит в массив, использую foreach выдает мне Invalid argument supplied for foreach()
вот код
<?
$f=fopen('key.txt','r') or die ("Ощибка открытия файла");
$key=array();
while(!feof($f)){
$key.=fgets($f);
}
fclose($f);
$words=explode(" ",$key);
for($j=1;$j<sizeof($words);){
for($i=1;$i<sizeof($words);){
trim($words[$i]);
trim($words[$j]);
echo $words2[]=$words[$j].' '.$words[$i]."<br>";
$i++;
}
$j++;
}
$iz=0;
foreach($dwords2 as $val=> $key){
if(strpos($key,"retro"))
$iz++;
}
echo sizeof($words2);
echo "<br>".$iz;
$f=fopen('result.txt','w') or die(" Не могу открыть файл");
foreach($words2 as $k=>$val){
trim($val);
fwrite($f,$val);
}
fclose($f);
?>
foreach($dwords2 as $val=> $key){
а везде $words2
vikseriq
03.02.2009, 23:28
Во-во, будет так:
<?
$f=fopen('key.txt','r') or die ("Ошибка открытия файла");
$key=array();
while(!feof($f)){
$key.=fgets($f);
}
fclose($f);
$words=explode(" ",$key);
for($j=1;$j<sizeof($words);){
for($i=1;$i<sizeof($words);){
trim($words[$i]);
trim($words[$j]);
echo $words2[]=$words[$j].' '.$words[$i]."<br>";
$i++;
}
$j++;
}
$iz=0;
foreach($words2 as $val=> $key){
if(strpos($key,"retro"))
$iz++;
}
echo sizeof($words2);
echo "<br>".$iz;
$f=fopen('result.txt','w') or die(" Не могу открыть файл");
foreach($words2 as $k=>$val){
trim($val);
fwrite($f,$val);
}
fclose($f);
?>
Также распостраненная ошибка с foreach - перепутывания местами переменных.
<?php
$arr = array('1','1','1','2','5');
$what = '1';
function array_count_element(&$array, $element, $reg = false)
{
$all = 0;
if($reg)
$element = strtolower($element);
foreach($array as $elem)
{
if($reg)
$elem = strtolower($elem);
if($elem == $element)
$all++;
}
return $all;
}
echo array_count_element($arr, $what);
P.S вы, что траванулись такой трэш писать?
Огромное спс я уже не знаю что бы я делал без всех Вас!
mailbrush
03.02.2009, 23:49
thx to Chaak
\r\n после каждого заголовка, после последнего \r\n\r\n
vikseriq
04.02.2009, 00:00
Чакус, не только. (Content-Length ? :D )
Мылокисть, лови готовую фичу post-sock
function post($ip, $port = 80, $path, $zapros, $cookie){
$res="";
$sock=fsockopen($ip,$port, $errno, $errstr, 30);
if(!$sock){
echo $errstr($errno);
} else {
$headers ="POST $path HTTP/1.0\r\n";
$headers .="Host: rambler.ru\r\n";
$headers .="User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.14)\r\n";
$headers .="Accept-Language: ru,ru-RU;q=0.9,en;q=0.8\r\n";
$headers .="Cookie: $cookie\r\n";
$headers .="Pragma: no-cache\r\n";
$headers .="Content-Type: application/x-www-form-urlencoded\r\n";
$headers .="Content-Length: " . strlen($zapros) . "\r\n";
$headers .="Connection: Close\r\n\r\n";
$headers .=$zapros;
}
fwrite($sock, $headers);
while(!feof($sock)){
$res .=fgets($sock, 1024);
}
return $res;
}
Юзается в туче реггеров )
$out =
"POST / HTTP/1.0\r\n".
"Host: localhost.ua\r\n".
"Connection: close\r\n".
"Referer: 2ip.ru/\r\n".
"User-Agent: Opera\r\n".
"Content-type: application/x-www-form-urlencoded\r\n".
"Content-Length: ".strlen("var1=val1&var2=val2")."\r\n".
"\r\n\r\n".
"var1=val1&var2=val2";
AFoST add
mailbrush, вообще не прикольно, когда ты спрашиваешь, а потом посты свои удаляешь =\
AFoST, post-запрос в теле доллжен быть, т.е после \r\n\r\n
vikseriq, когда нет Post-данных, content-length не обязателььна
mailbrush
04.02.2009, 00:06
Есть сайт. на нем есть поле, имя которого name. мне надо ввести туда john и вывести на экран результат... Думаю эту работу надо через fsockopen, но я с ним не очень дружу, пока на парсерах тернируюсь...
Curl используй он легче,саму форму кинь суда поможем.
AFoST, post-запрос в теле доллжен быть, т.е после \r\n\r\n
vikseriq, когда нет Post-данных, content-length не обязателььна
да я знаю) у меня прост кусок кода точь-в-точь как этот, но с ооп. я на быструю руку в блокноте криво исправил.
у меня такой вот был:
$this->request =
"POST http://".$this->host.$this->pathFile." HTTP/1.0\r\n".
"host: ".$this->host."\r\n".
"Connection: close\r\n".
"Content-type: application/x-www-form-urlencoded\r\n".
"Content-Length: ".strlen($this->var)."\r\n".
"\r\n".
$this->var;
mailbrush
04.02.2009, 00:12
rushter, <form action="" method="post">
<b>Nick:</b> <input name="name" type="text" value="">
</form>
$post = "name=john";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://site.com/script.php");
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$out = curl_exec($ch);
echo $out;
Писал по памяти,могут быть ошибки.
mailbrush
04.02.2009, 00:49
Эх, спс конечно, но мне надо именно на фсокопен, ибо курла нету...
поставить то 3 минуты
http://slil.ru/26613387
php.ini
extension=php_curl.dll
rushter Поставь так же без палева на хост заблокированным dl() и без прямого доступа к php.ini
mailbrush Выше - куча оберток для пост запросов. Берешь сниффер, в конце концов, и копируешь 1в1 запрос
Tigger
<?php
$email = 'email@rambler.ru';
$pass = '123';
$from = '1';
$to = '5';
set_time_limit(0);
$ua="User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Widows NT)";
$url = "http://vkontakte.ru/login.php";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, "success_url=&fail_url=&try_to_login=1&email=$email&pass=$pass");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEFILE, "./cook");
curl_setopt($ch, CURLOPT_COOKIEJAR, "./cook");
$res = curl_exec($ch);
curl_close($ch);
$a = strpos($res, 'OK' );
if ($a > 0)
{
echo "Незалогинились =(<br>";
exit;
}
$b = strpos($res, 'Found' );
if ($b > 0)
{
echo "<b>Удачно залогинились, приступаем к парсингу...</b><br>";
}
for($i = $from; $i <= $to; $i++)
{
$url_p = "http://vkontakte.ru/search.php?id=$i";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url_p);
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, "./cook");
curl_setopt($ch, CURLOPT_COOKIEJAR, "./cook");
$res_p = curl_exec($ch);
curl_close($ch);
preg_match('#<div style=\"overflow: hidden;\">(.*?)</div>#i',$res_p,$name);
$id = explode("php?",$url_p);
echo $id[1].":".$name[1]."<br>";
}
echo "<b>Работа окончена</b>";
?>
Результат:
Удачно залогинились, приступаем к парсингу...
id=1:Павел Дуров
id=2:Александра Владимирова
id=3:Вячеслав
Работа окончена
Ну как видиш в первом курле я добавил сохранение кукисов в файл, в втором ети куки читаються, как бы сессия продолжается. Добавил цикл и при помощи регулярки ищу Имена по профилям:
preg_match('#<div style=\"overflow: hidden;\">(.*?)</div>#i',$res_p,$name);
Собсна все, думаю понятно.
ЗЫ как видиш первые 4 строки ето как бы конфиг:
$email = 'email@rambler.ru';
$pass = '123';
$from = '1';
$to = '5';
Мыло и пасс, с которых логиниться. А так же 2 переменные, с какого id начинать и каким заканчивать.
Chrek625
04.02.2009, 04:18
Доброго всем времени суток.
Снова прошу помощи у меня опять возникла проблема с $this.
<?php
include_once("classes/DBManager.php");
include_once("PEAR.php");
class DBObject {
var $DBManager;
var $__table;
var $__keyColumn;
var $data = array();
var $view;
var $_isLoaded = false;
var $_changedColumns = array();
/**
* Constructor
*
* Creates a new DBObject
* if $objectId is specified gets data from database
*
* @param DBManager &$DBManager instance of DBManager
* @param mixed $objectId identity of object instance in database
* @access public
*/
function DBObject(&$DBManager, $objectId=null) {
$this->DBManager =& $DBManager;
if ($objectId !== null) {
$this->objectId = $objectId;
$this->get($objectId);
}
}
/**
* Gets data of current object from database and put it into class variables
*
* @param mixed $objectId identity of object instance in database
* @access public
*/
function get($objectId=null, $fieldsArray=array()) {
if ($objectId !== null) {
$this->objectId = $objectId;
}
if (is_array($fieldsArray) and sizeof($fieldsArray)>0) {
$fieldList = implode(',', $fieldsArray);
} else {
$fieldList = "*";
}
if (isset($this->objectId)) {
$this->data = $this->DBManager->SingleRowQuery("SELECT $fieldList FROM `{$this->__table}` WHERE {$this->__table}.{$this->__keyColumn}='{$this->objectId}'");
if ($this->data) {
$this->_isLoaded = true;
return true;
}
}
return false;
}
/**
* Stores data of current object from class variables into database
*
* @access public
*/
function insert() {
if (!isset($this->objectId)) {
$this->$objectId = $this->generateId(); <<-- строчка с ошибкой
}
$setClause = $this->_prepareSetClause();
if (strlen($setClause)>0) {
$sql = "INSERT INTO `{$this->__table}` SET $setClause ";
// echo "$sql<br>";
return $this->DBManager->ExecuteQuery($sql);
}
return false;
}
/**
* Updates data of current object from class variables into database
*
* @access public
*/
function update() {
if (isset($this->objectId)) {
$setClause = $this->_prepareSetClause();
if (strlen($setClause)>0) {
return $this->DBManager->ExecuteQuery("UPDATE `{$this->__table}` SET $setClause WHERE {$this->__table}.{$this->__keyColumn}='{$this->objectId}'");
}
}
return false;
}
/**
* Deletes current object in database and unsets class variables
*
* @access public
*/
function delete() {
if (isset($this->objectId)) {
return $this->DBManager->ExecuteQuery("DELETE FROM `{$this->__table}` WHERE {$this->__table}.{$this->__keyColumn}='{$this->objectId}'");
}
return false;
}
function getVariable($variableName) {
if ($variableName) {
if (in_array($variableName, array_keys($this->data))) {
return $this->data[$variableName];
}
}
return null;
}
function setVariable($variableName, $variableValue) {
$this->_changedColumns[] = $variableName;
$this->data[$variableName] = $variableValue;
}
function increaseVariable($variableName, $increaseValue) {
$this->setVariable($variableName, $this->getVariable($variableName)+$increaseValue);
}
function decreaseVariable($variableName, $decreaseValue) {
$this->setVariable($variableName, $this->getVariable($variableName)-$decreaseValue);
}
function removeVariable($variableName) {
if ($variableName) {
if (in_array($variableName, array_keys($this->data))) {
unset($this->data[$variableName]);
}
}
}
function isVariableEquals($variableName, $value) {
return ($this->getVariable($variableName) == $value);
}
function generateId() {
$id = '';
for( $i=0;$i<9;$i++ ) {
$id .= strval(rand(0,9));
}
return $id;
}
function _prepareSetClause() {
$setClause = '';
if ($this->_isLoaded) {
if (sizeof($this->_changedColumns)>0) {
foreach ($this->_changedColumns as $columnName) {
if ($columnName != $this->__keyColumn and strval(intval($columnName))!=$columnName) {
$setClause .= "{$this->__table}.$columnName = '".mysql_escape_string($this->getVariable($columnName))."',";
}
}
$setClause = substr($setClause,0,-1);
}
} else {
if (sizeof($this->data)>0) {
foreach ($this->data as $columnName=>$columnValue) {
if ($columnName != $this->__keyColumn and strval(intval($columnName))!=$columnName) {
$setClause .= "{$this->__table}.$columnName = '".mysql_escape_string($columnValue)."',";
}
}
$setClause = substr($setClause,0,-1);
}
}
return $setClause;
}
function getView($templateFile="index.html") {
// require_once 'HTML/Template/Flexy.php';
/* $flexy = new HTML_Template_Flexy();
if ($flexy->compile($templateFile)===true) {
$output = $flexy->bufferedOutputObject($this);
}
return $output;*/
}
function lockTable() {
return;
}
function unlockTable() {
return;
}
function getSystemParam($param)
{
$SQLQuery = "select $param from system_parameters";
$res = $this->DBManager->SingleRowQuery($SQLQuery);
return $res[0];
}
function getItemNameField()
{
$lang = $this->_app_voc->words['LANG'];
if ($lang == 'ENG')
{
return 'name_eng';
}
else if ($lang == 'RUS')
{
return 'name';
}
}
function getNameField()
{
$lang = $this->_app_voc->words['LANG'];
if ($lang == 'ENG') return 'name_eng';
else if ($lang == 'RUS') return 'name_rus';
}
function getDescrField()
{
$lang = $this->_app_voc->words['LANG'];
if ($lang == 'ENG') return 'descr_eng';
else if ($lang == 'RUS') return 'descr_rus';
}
function getRaceName($race)
{
$name_field = $this->getNameField();
$sql = "select $name_field from Alignments where al_name = '$race'";
$name = $this->DBManager->SingleRowQuery($sql);
return $name[0];
}
function _safe_symbol($text)
{
$text = str_replace('&', '', $text);
return $text;
}
}
?>
подскажите в чём ошибка в строчке $this->$objectId = $this->generateId();
Brain explosion
04.02.2009, 09:56
Нужна функция быстрого поиска в файле.
Т.е. file_search (string filename, string word) возвращать должна указатель на начало слова в файле в случае совпадения, в случае отсутсвия совпадения - false. вообщем аналог array_search ( mixed needle, array haystack [, bool strict] ) только не для массива а для файла.
Условия:
1. максимальная скорость работы после перевода php->exe.
2. отсутсвие органичений на размер оперативной памяти и длинну файла.
3. размер искомого слова не больше 255 байт.
4. как только 1 совпадение найдено поиск прекращается.
P.S. Может есть у кого готовая такая?
function file_search($fname, $search)
{
$fp = fopen($fname, "r");
while(!feof($fp)) {
if($search[0]==fread($fp, 1))
for($i=1; $i<strlen($search) && !feof($fp); $i++) if($search[$i]==fread($fp, 1)) ; else break;
if($i==strlen($search)-1) die('yes');
}
}
Chrek625
04.02.2009, 12:19
ну, возможно не ошибка, а варнинг... попробуй поставь @ перед $this
P.S в данном случае лучше заглушить ошибку, чем менять isset... мало ли, логику надо смотреть в другом случае.
Жаль конечно но заглушка ничего хорошего не дала :( посколько это ошибка указывается в скрипте регестрации то после того как я заглушил её ошибка не высветилась но вообщемто ничего не произошло вообще... просто белое окно браузера... а есть ли ещё какието варианты?
Покажи ошибку , я не телепат
застопорился на таком вопросе:
как реализовать брутфорс ЕСЛИ известны первый и последний символ семизначного пароля.
спасибо. с меня как всегда +сы :)
groundhog
04.02.2009, 15:11
Задача сводится к задаче генерации пятизначного пароля и дополнения известными символами слева и справа...
нужно найти ключ элемента массива по известному элементу. без цикла.
!in_array($var, $vars) ? $vars[] = $var : $vars[ключ элемента $var в массиве $vars][0] +=1;
какие варианты?
groundhog
04.02.2009, 15:36
array_search — Осуществляет поиск данного значения в массиве и возвращает соответствующий ключ в случае удачи
Описание
mixed array_search ( mixed $needle, array $haystack [, bool $strict] )
Ищет в haystack значение needle и возвращает ключ, если таковое присутствует в массиве, FALSE в противном случае.
Уважаемое сообщество написал функцию для подсчета слов в тексте, отказывается работать и выдает что -то не понятное, при тестировании создается видимость того что ф-ция explode не разбивает строку на слова (через echo просматривал значения массива $parse и видно было что там не слова а строки).
<?
function WordCounter($w_Arr,$c_Arr){
foreach($w_Arr as $k1=>$val1){
$parse=explode(" ",$val1);
foreach($parse as $k2=>$val2){
if(strpos($val1,$val2))
$c_Arr[$val2]++;
}
}
}
?>
http://php.su/functions/?str-word-count
mailbrush
04.02.2009, 16:43
<?php
$textarea = "слова слово один десять сто";
$textarea = str_replace("\n", " ", $textarea);
$words = explode(" ", $textarea);
$count = 0;
foreach($words as $word)
{
if(strlen($word) > 0) $count++;
}
echo $count;
?>
Вот какбы =)
тогда уж:
function words_count($text)
{
return count(explode(' ', str_replace('\n', ' ', $text)));
}
http://php.su/functions/?str-word-count
Нужна функция генерации паролей,напримере такой,но без повторения пароля.
[php]
function generate_password($number)
{
$arr = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
'n', 'o', 'p', 'r', 's', 't', 'u', 'v', 'x', 'y', 'z');
$pass = "";
for ($i = 0; $i < $number; $i++)
{
$index = rand(0, count($arr) - 1);
$pass .= $arr[$index];
}
return $pass;
<....КОД....>
}
В общем мне нужна функция,при которой пароль бы не повторялся,или снизить эту вероятность до 0.
m0Hze:
return md5(time());
вероятность повторения 0 (:
ЧТо то немогу понять....
есть массив
$url[]
В ней записи вида
/23.jpg
http://site.com/4.jpg
/tr/4.jpg
Нужно перебрать все и где нет http://site.com то вставить
Пользоваться только strpos
.....Кто сможет отхватит+ от меня
mixkorshun
04.02.2009, 21:42
kraken
for($i=0; i<100; $i++)
{
if($url[$i][1] == "/")
{
$url[$i] = "www.mysite.com".$url[$i];
}
}
если в синтаксисе не ошибся то так
mixkorshun
1.Ты ошибся $url[$i][1] покажет 2 ой символ
2. Я сказал с использованием strpos
function checkInputHost($host){
preg_match("/^(http:\/\/)?([^\/]+)/i", $host, $matches);
return $matches[2];
}
оч кайфовая регулярка. потом к возвратившейся переменной просто добавляешь http:// и все
mixkorshun
04.02.2009, 21:51
подожди немного - напишу
mixkorshun
04.02.2009, 22:00
kraken
for($i=0; $i<100; $i++)
{
$k = strpos($url[$i],"www.mysite.com");
if($k === false)
{
$k = strpos($url[$i], "/");
$k--;
//не нашел функцию ответственную за склейку, поройся plz в документации))
//а так после $k символа надо вставить http://www.mysite.com
}
}
m0Hze
Примерно так, гавнокод. Подумай сам как его умнее написать
<?php
$fp2 = fopen("3d_mail.txt", "w");
$str = 'abcdefghijklmnopqrstuvwxyz0123456789';
for ($iii=0; $iii<strlen($str); $iii++) {
for ($ii=0; $ii<strlen($str); $ii++) {
for ($i=0; $i<strlen($str); $i++) {
fputs($fp2, $str[$i].$str[$ii].$str[$iii]."\r\n");
}}}
fclose($fp2);
?>
хех,b3 - как всегда, грац но опимизировать смог ровно на одну строчку кода :) смотрю вариант с мд5,возможно попробую соединить.
Имеется такой скрипт:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<meta name="author" content="" />
<title>qwe</title>
</head>
<body>
<?php
$sposod = "1";
switch ($sposob)
{
case "1":
echo "<p>9999";
break;
case "2":
echo "<p>8888";
break;
case "3":
echo "<p>7777";
break;
default:
echo "<p>0000";
break;
}
?>
</body>
</html>
вроде нигде не выдает ошибку, но все равно всегда пишет по дефолту(((
че за фигня?
я уже замучился ...
мб что-то в кодировке??
Chrek625
04.02.2009, 22:18
Покажи ошибку , я не телепат
ошибка в строчке $this->$objectId = $this->generateId();
и выдвёт Fatal error: Cannot access empty property in /home/chrek625/public_html/classes/DBObject.php on line 66
Вопрос ставлю другим образом.Почему неработает?
function BG($url)
{
if (strpos($url,"http://www.site.ru")===false) $url="http://www.site.ru".$url;
return $url;
}
mailbrush
04.02.2009, 22:22
вроде нигде не выдает ошибку, но все равно всегда пишет по дефолту(((
че за фигня?
я уже замучился ...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<meta name="author" content="" />
<title>qwe</title>
</head>
<body>
<?php
if (isset($_GET['1'])){
$sposob = $_GET['1'];
switch ($sposob)
{
case "1":
echo "<p>9999";
break;
case "2":
echo "<p>8888";
break;
case "3":
echo "<p>7777";
break;
default:
echo "<p>0000";
break;
}
}
?>
</body>
</html>
Вот пробуй
MaTpOc Читай внимательно код - у тя две разных переменных sposob и sposod
Некогда не работал с ГБ,но наверно сдесь без нее не обойтись.
Суть вопроса.
Есть сайт,пускай image.ru
НА нем лежат картинки,image.ru/image/1.jpg - задача програмным средством создать на моем сервере такую же картинки.Лучше всего гб,и чтобы каждый раз при обращении картинка обновлялась.Кто может помочь?Или мб тупо скачивать каждый раз ее с ихнего серввака?Но не могу придумать как застваить ее обновляться в таком случае.
Во 1 не ГБ а ГД(GD)
ВО 2 http://il2.php.net/manual/ru/function.imagecreatefromjpeg.php
Во 1 не ГБ а ГД(GD)
ВО 2 http://il2.php.net/manual/ru/function.imagecreatefromjpeg.php
Все,обошелся без руководст и даже без ГД слвсем. :)
Криво,но работает...
Комунибудь пригодиться может быть.
<?
if ($_GET['image'] == 'avatar')
{
header("Content-type: image/jpg");
$dig = rand(1, 49);
$url = 'http://avatary.ru/100/s/anime/girls/' . $dig . '.jpg';
$image = file_get_contents("$url");
$f = fopen('image.jpg', 'w');
fwrite($f, $image);
fclose($f);
echo file_get_contents('image.jpg');
}
else
{
header('Locations: http://localhost/image.php?image=avatar');
}
?>
Уважаемое сообщество, возникла очередная проблема, написал скрипт суть которого в следующем, берется текстовый файл записывается в переменную (файл увесистый около 2Мб) делится на 10 равных частей и записывается в 10 разных файлов, столкнулся с такой проблемой переполнения памяти, подскажите где утечка.
<?
$f=fopen("base.txt","r+");
while(!feof($f))
$text.=fgets($f);
fclose($f);
$len=strlen($text);
$part=(int)(len/10);
$pos=0;
$index=(int)(sizeof($topic)/10);
for($i=0;$i<$len;$i+=$part){
$parts[]=substr($text,$pos,$i);
$pos=$i;
}
foreach($parts as $key=>$val){
$file=fopen("/index/".$key.".txt","w+");
fwrite($file,$val);
fclose($file);
}
?>
Gin
$part=(int)($len/10);
$index=(int)(sizeof($topic)/10);
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot