![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jul 2005
Сообщений: 6
|
*******Ситуация такая: Будущий владелец сайта в своем админ-разделе сочинит нужные ему пункты меню и укажет нужные ему URL-ы, установит галочки, чтобы выбрать какие пункты меню активировать сразу, а какие пока оставить скрытыми. Все это ляжет в таблицу SQL (в поля id, section, link, visible).
****Меню на странице сайта формируется вот таким PHP кодом. <?php
$sql="SELECT id, visible, section, link FROM menu ORDER by id";
$result=mysql_query($sql);
while($row=mysql_fetch_array($result))
if($row["visible"]=="yes") //если пункт не заблокирован и его надо включить в меню, то показываем
{
echo("<a href='".$domain.$row["link"]."'>".$row["section"]."</a>");
}
?>
Подскажите как соединить этот код php и AS? Если можно поподробнее, в какой кадр кнопки, что и как правильно надо вписать? Как надо изменить этот код, чтобы линки cделать Flash-кнопками. PS - пункты меню НЕ НА РУССКОМ! Помогите пожалуйста! |
|
|||||
|
Регистрация: Jan 2003
Адрес: Kiev
Сообщений: 116
|
очень просто.
надо передать массив твоих линков во флеш. тут 2 способа 1)флеш из файла принимает в формате a=value&a1=value1... принимать так : loadvariable("index.php",_root); в результате получишт во флеше _root.a,_root.a1 и т.д. 2) прямо в код где объявлена флешка, например <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="500" height="470" id="flash1" align="center"> <param name="allowScriptAccess" value="sameDomain" /> <param name="movie" value="flash1.swf?id=2821635&rnd=9777 /> <param name="quality" value="high" /> <param name="bgcolor" value="#ffffff" /> <embed src="flash1.swf?id=2821635&rnd=9777" quality="high" bgcolor="#ffffff" width="500" height="470" name="flash1" align="center" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /> </object> переменные попадают в _root |
|
|||||
|
Регистрация: Jul 2005
Сообщений: 6
|
2msdn
Т.е. я получу a=.., a1=.. ... - это URL линков? А надписи на кнопке? Я не понимаю. Не забивай тапками... плиззз, разъясни. Пожалуйста, можно все же пункт 1) поподробнее. Цитата:
|
|
|||||
|
Регистрация: Jan 2003
Адрес: Kiev
Сообщений: 116
|
т.е. ты мог бы получить _root.a1,_root.a2.
лучше попробуй передать сразу массив, передать можно так: <?php $sql="SELECT id, visible, section, link FROM menu ORDER by id"; $result=mysql_query($sql); $i = 0; while($row=mysql_fetch_array($result)) if($row["visible"]=="yes") //если пункт не заблокирован и его надо включить в меню, то показываем { echo "url[".$i."]=".$domain.$row["link"]."&"; $i++; } ?> а принять так: loadvariable("index.php",_root); 1)понятно что пхп код лежит в файлике index.php, или назови его как тебе удобно. 2)в результате у тебя будет массив _root.url со ссылками, все что нужно кроме ссылок можеть передать так же. 3)что бы увидеть появится ли текст во флеше, поставь текстовое поле, и в свойствах поставь ему в поле varible, _root.url[0], должно показать первый эл-нт массива. |
|
|||||
|
Регистрация: Jul 2005
Сообщений: 6
|
Угу... пока еще реально не вижу, но ход мысли ясен. Биг сенькс за науку. Пойду грызть
![]() |
|
|||||
|
Регистрация: Jul 2005
Сообщений: 6
|
Вооот... получилось вот что: это в index.php
<?php
$sql="SELECT section, link FROM menu ORDER by id";
$result=mysql_query($sql);
$i = 0; $k = 0;
while($row=mysql_fetch_array($result))
{
echo "url[".$i."]=".$row["link"]."&";
echo "txt[".$k."]=".$row["section"]."&";
$i++; $k++;
}
?>
(Кстати «loadVariable» с «S» на конце ... - убил 2 часа пока обнаружил... ладно, проехали...)— текстовое поле (это, конечно не кнопка, о которой я спрашиваю, ну да ладно - не до жиру...) показывает мне первые элементы массива. Вроде Ура!! да не тут то было. — ВОПРОС остался не решен! Как же теперь показать следующую флэш-кнопку (или текст.поле), чтобы в нем был второй (третий и т.д.) эл-т полученного массива? Т.е. вопросы остались те же, только поменялись местами: — Как надо изменить этот код, чтобы линки cделать Flash-кнопками и чтобы надписи и линки были взяты из DB. — В какой кадр кнопки, что и как правильно надо вписать? И появился новый вопрос: — А что делать, если текст в DB в два слова, т.е. с пробелом? Надписи в два слова не работают (их не видно). Я так понимаю возникает проблема с URL-кодировкой в которой я получаю массив из переменных для _root ПОМОГИТЕ! Пожалуйста! |
|
|||||
|
Регистрация: Jan 2003
Адрес: Kiev
Сообщений: 116
|
дорогой товарищ, по поводу притензий по ошибкам в моем коде могу сказать следующее, я не пытаюсь сделать все за вас, а просто даю направлени движения, в том то все и дело, что сделать это вточь с вашими требованиями стоит времени, а значит денег. баксов за 100 я бы сделал это в течении 1-2 часов, но так как это делаеете вы и зарабатывете на этом+учитесь, то уж потрудитесь разбираться что к чему, а не лепить тот код что вам дают, понятно что я писал его прямо на форуме и не тестировал.
по поводу вопросов: 1)текстовое поле нужно сделать частью кнопки, разместить его на ней. если вы не знаете как, то это уже другой вопрос. 2)в вашем случае следует создать 1 кнопку с текстовым полем на ней, а потом её размножить, в соответствии с кол-вом эл-тов массива, накладывая на неё соответствующие надписи, кнопку размножать можно методом duplicateMovieClip(). 3)с пробелом поступить так: закодировать в пхп все надписи на кнопках функцией htmlspecialchars, во флеше использовать текстовое поле с хтмл форматированием. пробелы перекодируются в и все будет ок, как при передаче так и при отображении. |
|
|||||
|
Регистрация: Jul 2005
Сообщений: 6
|
Спасибо.
|
|
|||||
|
Регистрация: Jul 2005
Сообщений: 6
|
Цитата:
Цитата:
Уважаемый msdn если Вы заметили, я задаю конкретные вопросы касательно конкретной ситуации. Я не прошу указать «направление движения». Мое незнание AS не дает Вам право гонять меня по ЛОЖНЫМ направлениям дабы поучить уму-разуму! Не можете/не хотите оказать ПОМОЩЬ, не оказывайте «медвежью услугу» - все равно что человеку, который тонет бросать вместо спасательного круга учебник по плаванию... Уважаемые посетители форума, кто знает, помогите пожалуйста решить задачу! С благодарностью приму пошаговый план действий, который приведет к реальному воплощению задуманного, если сиё возможно. PS - если это важно, я НЕ зарабатываю изготовлением сайтов. |
|
|||||
|
[+1 14.08.08]
[+1 20.08.08] |
гы.
вообще выбраный способ автору топика не очень подходит. я так понимаю, что количество кнопок будет _динамическое_. т.е. неудобно в одной флешке делать дубликаты кноп, потому что, размеры флешки константны. ну... я надеюсь, я понятно выразил свою мысль. второй метод будет намного комфортнее. тогда каждая кнопа выводится отдельным элементом. все что нужно для реализации в этом топике уже указано. для полного счастья откройте поиск и поисчите FlashVars(не обязательна форума флешера), можно поискать в самом хелпе флеша, гугл тоже не обанкротился еще ;-) воопсче, аффтору советую поумерить пыл. кинул бы сюда код свой, что использовал, да использовал только один раз, и там много лишнего =/
__________________
~ Never trouble trouble till trouble troubles you! |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:53. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|