Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - FANTAzeRus

Страницы: [1] 2 3 ... 7
1
Веб Графика / Динамические кнопки
« : 29 Сентября 2005, 14:08:57 »
Написал следующее:
В первом кадре сцены пишу:

var a=[{myText: \'Test1\', myURL: \'http://test1.ru\'}, {myText: \'Test2\', myURL: \'http://test2.ru\'}];
var currY = 10;
for(i=0; ivar obj = {myText: a.myText, myURL: a.myURL, _x: 10, _y: currY};
createEmptyMovieClip("BH"+i, i);
var testb = eval("BH" + i).attachMovie("testButMc","testb"+i, i, obj);
currY += testb.height + 6;
}

далее в библиотеке создаю новый фильм:
при создании задаю Name = testBut, Identifier = testButMc, Export for ActionScript, Export In Firs Frame,
В фильме в первый кадр вставляю
новый слой и в первый кад помещаю динамический текст (инстанс texta), далее создаю новый слой и в первый кадр вставляю:
#initclip
function testBut() {
this.init();
}
testBut.prototype = new MovieClip();
Object.registerClass("testButMc",testBut);
testBut.prototype.init=function(){
this.texta.autoSize = true;
this.texta.text = this.myText;
this.addProperty("width",this.getWidth,null);
this.addProperty("height",this.getHeight,null);
this.onPress = function() {
trace(this.myURL);
getURL(this.myURL,_blank,"GET");
}
}
testBut.prototype.getWidth = function() {
return this.texta.textWidth;
}
testBut.prototype.getHeight = function() {
return this.texta.textHeight;
}
#endinitclip

В результате получаем динамичсеки сгенерированные кнопки с надписями myText и при клике они должны открывать броузер и передавать адрес myURL. Все открывается, только вот при клике скажем на Test2 в адресной строке пишется такая лажа:
_http://test2.ru/?testBut=%5Btype+Function%5D&a=%5Bobject+Object%5D%2C%5Bobject+Object%5D&currY=52&i=2&obj=%5Bobject+Object%5D&testb=%5Flevel0%2EBH1%2Etestb1

причем если перед getURL() поставить trace(this.myURL); то выводится КОРРЕКТНЫЙ текст http://test2.ru

2
Базы данных / Вопрос о хранимых процедурах
« : 15 Сентября 2005, 12:40:01 »
Использую FireBird 1.5

Задача такова: в хранимой процедуре необходимо произвести два UPDATE последоательно причем при UPDATE хотелось бы задать что то типа WHERE ID IN(:ELEMENTS1) и WHERE ID  IN(:ELEMENTS2), метод WHERE(SLECT ID FROM ....) не подходит, т.к. после первого UPDATE происходит измнение полей и второе условие отработает уж не корректно, так что небходимо именно заранее сформировать эти спиcки :ELEMENTS1 и 2. Как это реализовать ума не приложу. Может кто подкинет свежую идейку???

3
$_MY = array_merge($_GET,$_POST);
if($_MY[\'delButton\'])
{
$Del_Items = implode(",",$_MY[\'Items\']);
echo "DELETE FROM TABLE WHERE id IN(".$Del_Items.")";
//mysql_query("DELETE FROM TABLE WHERE id IN(".$Del_Items.")");
}

if($_MY[\'editButton\'])
{
//Проходишься по Массиву $_MY[\'Items\'] и вызываешь на редактирование элементы с ID=$_MY[\'Items[N]\']
//Смотри по аналогии с delButton
}

$res = mysql_query("SELECT * FROM cat LIMIT 0,10");
if(mysql_num_rows($res)>0)
{
echo "

";
while($ln = mysql_fetch_array($res))
{
printf(" - %s
",$ln[\'id\'],$ln[\'title\']);
}
echo "";
echo "
";
}
else echo "Нечего обрабатывать";


Написано просто, без шаблонов, только лишь с той целью чтобы ты принцип понял!

4
Абсолютно НЕКОРРЕКТНО поставлен вопрос!!!

5
Обсуждение сайтов / Жду критику!
« : 15 Августа 2004, 14:40:45 »
Посмотрите и вынесите свой вердикт: 3aXoDu.Com

6
Базы данных / "Укутываение" текста
« : 03 Августа 2004, 21:17:12 »
Написал запрос, который при выводе списка постов "укутывает" текст длинной более N=символов, в данном случае 500 и закрывает его фразой "Читать дальше", вот собсна сам запрос:
SELECT
ca.cid,
ca.title,
ca.opened,
ca.clevel,
ca.type,
DATE_FORMAT(ca.cdat,\'%d.%m.%Y %H:%i:%s\') dat,
IF(LENGTH(co.text)>500,CONCAT(SUBSTRING(co.text,1,500),\'
...
Читать дальше\\"\',ca.title,\'\\"\'),co.text) text
,
u.type ust,
u.nik
FROM cat ca
LEFT JOIN users u ON(u.id=ca.user)
LEFT JOIN content co ON(co.cid=ca.cid)
WHERE ca.clevel>2 and ca.cid>1 and ca.wis=\'Y\' and ca.title
ORDER BY ca.dat DESC

Но есть ОГРОМНЫЙ минус такого метода - это абсолютно непредсказуемое обрезание текста, надеюсь понятно! Дык вот, можно это конечно решить следующим образом: уже в коде скрипта отрезать все лишнее с конца до ближайшего пробела, НО есть жгучее желание все это реализовать в запросе ... не подскажете ли в каком направлении крутить???

7
If (is_array($abc))
{
$LIST = implode("::",$abc)
$SQLUpdate="update user set massicq=\'".$LIST."\'Where ID=1";

Для Чтения:

$res="Select * From user where ID=1";
if(mysql_num_rows($res)>0)
{
$ln=mysql_fetch_array($res);
$massicq=explode("::",$ln[\'massicq\']);
foreach($massicq as $line)
{
echo $line."
"
}
}

?>

ИМХО это то, что ты хотел!

8
Базы данных / удаление таблиц
« : 23 Июля 2004, 10:27:16 »
Если на локале, то можно сделать просто DROP DATABASE db_name, а потом создать заново, но на хостинге такой трюк не прокатит! Так что самое правильное это .... см выше :-)

9
Базы данных / удаление таблиц
« : 23 Июля 2004, 09:55:50 »
Попробуй так:

$db = "you_database";
$res = mysql_query("SHOW TABLES FROM ".$db);
if(mysql_num_rows($res))
{
  while($ln = mysql_fetch_array($res))
  {
    $tables[] = $db.".".$ln[\'Tables_in_\'.$db];
  }
  $list_tables = implode(",",$tables);
  mysql_query("DROP TABLE ".$list_tables);
  echo "Ok! Все прибили!";
}
else echo "Нихрена нет таблиц!!!";

10
Вот ЗАПРОС из класса:

        function getParent($ID, $level=1) {
                if($level < 1) die("phpDbTree error: ".$this->db->error());

                $this->sql = $this->sqlComposeSelect(array(
                        \'\', // Params
                        \'\', // Fields
                        $this->table.\' _\'.$this->table.\', \'.$this->table, // Tables
                        \'_\'.$this->table.\'.\'.$this->id.\'=\\\'\'.$ID.\'\\\'\'
                                .\' AND _\'.$this->table.\'.\'.$this->left.\' BETWEEN \'.$this->table.\'.\'.$this->left.\' AND \'.$this->table.\'.\'.$this->right
                                .\' AND \'.$this->table.\'.\'.$this->level.\'=_\'.$this->table.\'.\'.$this->level.\'-\'.(int)$level // Where
                ));

                return $this->db->query($this->sql);
        }

11
Для определения РОДИТЕЛЯ элемента используй getParent($id,$level); класс DBTree, если нужны все родилели то enumPath($ID, $showRoot=false)

12
PHP / Генерация картинок
« : 23 Апреля 2004, 09:13:03 »
Например так ... на файл подложки (в данном случае *.PNG, создать можно например в Фотожопе) выводится текст в данном случаее счетчик посещений, код писан давно и возможно подлежит модификации:

...
...
...

$all = get_size_of_string($all);
$all_today = get_size_of_string($all_today);
$unique = get_size_of_string($unique);

header("Content-Type:image/png");
$img = "test.png";
$im = imagecreatefrompng ($img);
$color1 = imagecolorallocate($im, 30, 38, 81);
$color2 = imagecolorallocate($im, 245, 246, 253);

ImageString($im , 1, 36, 1, "$all", $color1);
ImageString($im , 1, 36, 21, "$unique", $color1);
ImageString($im , 1, 36, 11, "$all_today", $color2);

ImagePNG ($im);
ImageDestroy ($im);

function get_size_of_string($string)
{
  return (str_repeat(" ",10-strlen($string)).$string);
}

13
PHP / Отделение разрядов!
« : 12 Апреля 2004, 11:32:19 »
Спасибо ФСЕ получилось!

14
PHP / Отделение разрядов!
« : 12 Апреля 2004, 11:02:50 »
Когда то писал на Perl вот такой код:

sub Dmoney()
{
  my $t=reverse $_[0];
  $t =~ s/(\\d\\d\\d)(?=\\d)(?!\\d*\\.)/$1,/g;
  $t = "$t\\$";
  return scalar reverse $t;
}

т.е. отсылая скажем в функцию 2378904 получал $2.378.904
Не подскажете как реализовать аналог на PHP ???

15
PHP / Матный фильтр
« : 06 Апреля 2004, 17:47:40 »
Написал скрипт:

function DropMat($text)
{
  $mat = array(
               "фуй"=>"***"
              );
 
foreach($mat as $k=>$v)
  {
    $text = str_replace($k,$v,$text);
  }
  return($text);
}

Как модифицировать сей код чтобы замена происходила независимо от регистра т.е. для слов Фуй, ФУЙ, фУй  и т.д. была всего одна строчка в массиве???? Чую прегэкспами попахивает, но разбираться некогда подсткажате (с примером желательно) как сие реализовать!!!!???

Страницы: [1] 2 3 ... 7