MMGP logo
Присоединяйтесь к нашему инвестиционному форуму, на котором уже 650,464 пользователей. Чтобы получить доступ ко многим закрытым разделам и начать общение - зарегистрируйтесь прямо сейчас.
Все, что относится к Web-Программированию (PHP, Perl, JavaScript, MySQL, XML и т.д.)
Первый пост Опции темы
Старый 18.10.2010, 01:07
#1
Любитель
 
Пол: Мужской
Адрес: Киев
Инвестирую в: Свой бизнес
Регистрация: 15.05.2007
Сообщений: 796
Благодарностей: 87
Функция java в php

Перелопатил море форумов, но не могу понять как заставить функцию подмена картинки при наведении(rollover image) в php скрипт.
Есть скрипт: <script type="text/javascript">
<!--
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>

И в :
<?php $result = mysql_query("SELECT * FROM slovar",$db);printf ("<a href='view_word.php?letter=a' onMouseOut='MM_swapImgRestore()' onMouseOver='MM_swapImage('Image2',' ','Image/buttons/A1.gif',0)'> <img name='Image2' border='0' src='Image/buttons/A.gif'> </a> " ); ?>

он неработает. Как сделать чтобы эта функция выполнялась ?
OrlandO вне форума
Старый 18.10.2010, 08:51
#2
Мастер
 
Пол: Мужской
Адрес: Поволжье
Инвестирую в: Свой бизнес
Регистрация: 29.08.2007
Сообщений: 2,301
Благодарностей: 420

награды Ветеран MMGP.RU Волшебный горшочек 
Re: Функция java в php

Не понятно причем тут пхп... Зачем в пхп был получен $result...
Спанч Боб вне форума
Старый 18.10.2010, 10:04
#3
Любитель
 
Пол: Мужской
Адрес: Киев
Инвестирую в: Свой бизнес
Регистрация: 15.05.2007
Сообщений: 796
Благодарностей: 87
Автор темы Re: Функция java в php

А как правильно? Я так понмаю это команда для массива ? Пхп тут при том, что мы обращаемся к базе данных.
OrlandO вне форума
Старый 18.10.2010, 11:29
#4
Интересующийся
 
Пол: Мужской
Адрес: Рязанская обл
Инвестирую в: лимиты доверия
Регистрация: 23.07.2010
Сообщений: 97
Благодарностей: 51
Re: Функция java в php

Правильно вот так:
<?php
$result = mysql_query("SELECT * FROM slovar",$db);
echo '<a href="view_word.php?letter=a" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage(\'Image2\',\' \',\'Image/buttons/A1.gif\',0)"> <img name="Image2" border="0" src="Image/buttons/A.gif"> </a> ';
?>
а ещё правильней вот так:
<?php
$result = mysql_query("SELECT * FROM slovar",$db);
?>
<a href="view_word.php?letter=a" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image2',' ','Image/buttons/A1.gif',0)"> <img name="Image2" border="0" src="Image/buttons/A.gif"> </a>

Домашнее задание: почитать мануал по printf() и не юзать её там, где нужно юзать print
Summerboy вне форума
Сказали спасибо:
OrlandO (18.10.2010)
Старый 18.10.2010, 23:16
#5
Любитель
 
Пол: Мужской
Адрес: Киев
Инвестирую в: Свой бизнес
Регистрация: 15.05.2007
Сообщений: 796
Благодарностей: 87
Автор темы Re: Функция java в php

Спасибо, я так понял эта команда используется для массивов ))
OrlandO вне форума
Старый 19.10.2010, 00:00
#6
Мастер
 
Пол: Мужской
Адрес: Поволжье
Инвестирую в: Свой бизнес
Регистрация: 29.08.2007
Сообщений: 2,301
Благодарностей: 420

награды Ветеран MMGP.RU Волшебный горшочек 
Re: Функция java в php

Не вижу использования переменной $result, поэтому и спросил к чему это.
Спанч Боб вне форума
Сказали спасибо:
OrlandO (19.10.2010)
Старый 19.10.2010, 00:28
#7
Любитель
 
Пол: Мужской
Адрес: Киев
Инвестирую в: Свой бизнес
Регистрация: 15.05.2007
Сообщений: 796
Благодарностей: 87
Автор темы Re: Функция java в php

А из-за чего может возникнуть проблема с дублированием такой функции? Например: <?php
$result = mysql_query("SELECT * FROM slovar",$db);
echo '<a href="view_word.php?letter=a" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage(\'Image2\',\' \',\'Image/buttons/A1.gif\',0)"> <img name="Image2" border="0" src="Image/buttons/A.gif"> </a> ';
?>
<?php
$result = mysql_query("SELECT * FROM slovar",$db);
echo '<a href="view_word.php?letter=b" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage(\'Image2\',\' \',\'Image/buttons/B1.gif\',0)"> <img name="Image2" border="0" src="Image/buttons/B.gif"> </a> ';?>

............

в таком случае картинки опять статичны !
OrlandO вне форума
Старый 19.10.2010, 23:20
#8
Интересующийся
 
Пол: Мужской
Регистрация: 01.10.2010
Сообщений: 6
Благодарностей: 2
Re: Функция java в php

Цитата:
Сообщение от OrlandO Посмотреть сообщение
А из-за чего может возникнуть проблема с дублированием такой функции? Например: <?php
= mysql_query("SELECT * FROM slovar",);
echo '<a href="view_word.php?letter=a" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage(\'Image2\',\' \',\'Image/buttons/A1.gif\',0)"> <img name="Image2" border="0" src="Image/buttons/A.gif"> </a> ';
?>
<?php
= mysql_query("SELECT * FROM slovar",);
echo '<a href="view_word.php?letter=b" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage(\'Image2\',\' \',\'Image/buttons/B1.gif\',0)"> <img name="Image2" border="0" src="Image/buttons/B.gif"> </a> ';?>

............

в таком случае картинки опять статичны !
Скорее всего так не работает потому, что разным картинкам задано одно и то же имя ("Image2").
Но вообще скрипт для смены изображений у Вас какой-то огромный и не особо понятный))). Если он только для roolover'a используется, то я бы его убрал и сделал вот так:

Код:
<html>
    <head>
        <script language="javascript">
        <!-- hide from non javascript browsers
            function rollover(object, img_src) {
                var img = object.getElementsByTagName('img');
                img[0].src = img_src;
                return true;
            }
        -->
        </script>
    </head>
    <body>
        <p align="center">
            <a href="/" onmouseover="rollover(this, 'A1.gif');" onmouseout="rollover(this, 'A.gif');"><img src="A.gif"></a>
        </p>
        <p align="center">
            <a href="/" onmouseover="rollover(this, 'B1.gif');" onmouseout="rollover(this, 'B.gif');"><img src="B.gif"></a>
        </p>
        <p align="center">
            <a href="/" onmouseover="rollover(this, 'C1.gif');" onmouseout="rollover(this, 'C.gif');"><img src="C.gif"></a>
        </p>
    </body>
</html>
У меня получилось вообще убрать у тега IMG атрибут name, вроде нормально работает, но в разных браузерах не проверял - только в Chrome.
И ещё - новая картинка будет загружаться в момент наведения мышкой на ссылку, и это скорее всего будет заметно (хотя я так понял, что это будут небольшие изображения букв алфавита - может и покатит). Чтобы не было заметно загрузки картинок, их можно загрузить заранее, вместе с загрузкой страницы.

Хотел написать ссылку, где описан способ предзагрузки изображений, но у меня не хватает сообщений для вставки ссылок...)))
Mr. Vine вне форума
Сказали спасибо:
OrlandO (20.10.2010)
Старый 20.10.2010, 14:40
#9
Любитель
 
Пол: Мужской
Адрес: Киев
Инвестирую в: Свой бизнес
Регистрация: 15.05.2007
Сообщений: 796
Благодарностей: 87
Автор темы Re: Функция java в php

уже справился. спасибо !!!
OrlandO вне форума
Старый 28.10.2010, 00:32
#10
Любитель
 
Пол: Мужской
Адрес: Киев
Инвестирую в: Свой бизнес
Регистрация: 15.05.2007
Сообщений: 796
Благодарностей: 87
Автор темы Re: Функция java в php

По ходу работы возник еще один вопрос который никак не могу разрешить. Нужно реализовать такую функцию, чтобы выводились слова из определенного раздела, то есть есть функция:
<? $result = mysql_query("SELECT * FROM slovar",$db);

printf ("<a href='view_sphere.php?id=%s'class='style1'>%s</a><br> ",$myrow["sphere"],$myrow["name"] );

?>
Которая после термина - делает ссылку на раздел к которому он относится.И код на странице отображения :
<?php
$result = mysql_query("SELECT * FROM slovar WHERE sphere='$sphere'",$db);
$myrow = mysql_fetch_array($result);
do
{
printf ("<a href='view_descr.php?id=%s'class='style1'>%s</a><br> ",$myrow["id"],$myrow["name"] );
}
while ( $myrow = mysql_fetch_array($result));
?>
Но браузер выводит только один раздел. В чем может быть проблема ?
Если непонятно описание проблемы вот пример: https://uallfinanz.com/dict/slovar.php
Слова на буквы "С" и "И" . Хоть разделы разные, го выводит только страхование по всем словам

добавлено через 19 часов 54 минуты
Разобрался, уже не нужно!

Последний раз редактировалось OrlandO; 28.10.2010 в 20:26. Причина: Добавлено сообщение
OrlandO вне форума
Старый 28.10.2010, 21:15
#11
Интересующийся
 
Пол: Мужской
Регистрация: 01.10.2010
Сообщений: 6
Благодарностей: 2
Re: Функция java в php

Я так понял, последнюю проблему решили уже? А то не смог обнаружить неправильного поведения на сайте)
Mr. Vine вне форума
Войдите, чтобы оставить комментарий.
Быстрый переход