Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: ПОМОГИТЕ =(
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » ПОМОГИТЕ =(

Страниц (4): [1] 2 3 4 »
 

1. BoJlod9I - 02 Августа, 2011 - 17:58:27 - перейти к сообщению
Всем привет!
есть ссылка
<a href="?id=45" value="#edit" name="modal"><img src="../style/edit.png"/>

я перехожу по этой ссылке и у меня запускается модальное окно
вот фнкц. клика
var id = $(this).prev('href').attr('value');
я поставил prev('href') что-бы прочитать сслыку с ид а потос читаю value-при помощи которого открывается форма.
но у меня ?id= в ссылку не передается
в чем проблема?
2. Arni - 02 Августа, 2011 - 18:02:25 - перейти к сообщению
Та не будет вам никто отвечать пока вы толком не покажите как вы передавать айди пытаетесь в свою сслыку.
3. BoJlod9I - 02 Августа, 2011 - 18:05:18 - перейти к сообщению
ПЕРЕДАЮ ID методом GET

PHP:
скопировать код в буфер обмена
  1. do
  2.                 {
  3.                 printf ('<tr>
  4.                                 <td><input name="id[]" type="checkbox" value="%s" /></td>
  5.                                 <td>%s</td>
  6.                                 <td>%s</td>
  7.                                 <td>%s</td>
  8.                                 <td>%s</td>
  9.                                 <td>%s</td>
  10.                                 <td>%s</td>
  11.                                 <td>%s</td>
  12.                                 <td>%s</td>
  13.                                 <td>%s</td>
  14.                                 <td>%s</td>
  15.                                 <td>%s</td>
  16.                                 <td>%s</td>
  17.                                 <td width="21"><a href="?id=%s" value="#edit" name="modal"><img src="../style/edit.png"/></a></td>
  18.                         </tr>
  19.                 ',
  20.                                 $result["id"],
  21.                                 $result["id"],
  22.                                 $result["model"],
  23.                                 $result["color"],
  24.                                 $result["size"],
  25.                                 $result["material"],
  26.                                 $result["order_date"],
  27.                                 $result["date_added"],
  28.                                 $result["date_sell"],
  29.                                 $result["order_price"],
  30.                                 $result["price"],
  31.                                 $result["income"],
  32.                                 $result["status"],
  33.                                 $result["id"]);
  34.                 }
  35. while ($result = mysql_fetch_array($read));
4. Arni - 02 Августа, 2011 - 18:14:31 - перейти к сообщению
Ну и где тут в вашем коде есть что-то тапа

PHP:
скопировать код в буфер обмена
  1. $_GET['id'] или $_REQUEST['id']
?
5. BoJlod9I - 02 Августа, 2011 - 18:17:07 - перейти к сообщению
ну так напиши по правельному
6. Arni - 02 Августа, 2011 - 18:20:36 - перейти к сообщению
Ну если так, пальцем в небо то как то так.
PHP:
скопировать код в буфер обмена
  1.  
  2. do
  3.                 {
  4.                 printf ('<tr>
  5.                                <td><input name="id[]" type="checkbox" value="%s" /></td>
  6.                                <td>%s</td>
  7.                                <td>%s</td>
  8.                                <td>%s</td>
  9.                                <td>%s</td>
  10.                                <td>%s</td>
  11.                                <td>%s</td>
  12.                                <td>%s</td>
  13.                                <td>%s</td>
  14.                                <td>%s</td>
  15.                                <td>%s</td>
  16.                                <td>%s</td>
  17.                                <td>%s</td>
  18.                                <td width="21"><a href="?id='.(isset($_GET['id']) ? $_GET['id'] : '').'" value="#edit" name="modal"><img src="../style/edit.png"/></a></td>
  19.                        </tr>
  20.                ',
  21.                                 $result["id"],
  22.                                 $result["id"],
  23.                                 $result["model"],
  24.                                 $result["color"],
  25.                                 $result["size"],
  26.                                 $result["material"],
  27.                                 $result["order_date"],
  28.                                 $result["date_added"],
  29.                                 $result["date_sell"],
  30.                                 $result["order_price"],
  31.                                 $result["price"],
  32.                                 $result["income"],
  33.                                 $result["status"],
  34.                                 $result["id"]);
  35.                 }
  36. while ($result = mysql_fetch_array($read));
  37.  
7. BoJlod9I - 02 Августа, 2011 - 18:27:12 - перейти к сообщению
У меня ссылке создаются в массиве и если ты знаеш что такое $_GET то ты поймеш что я делаю.
8. OrmaJever - 02 Августа, 2011 - 18:31:46 - перейти к сообщению
у сылок должен быть не href а onclick, и в этом onclick нужно вызывать функцию с нужным ид, в этой функции уже формировать это модальное окно с нужным ид
9. Arni - 02 Августа, 2011 - 18:32:44 - перейти к сообщению
BoJlod9I пишет:
У меня ссылке создаются в массиве и если ты знаеш что такое $_GET то ты поймеш что я делаю.


Дошло, сори я просто print не использую, поэтому не внимательно посмотрел код. Ну хорошо, а как вы значение с $_GET['id'] передаете в свой массив?
10. BoJlod9I - 02 Августа, 2011 - 18:34:19 - перейти к сообщению
Если кто понял OrmaJever покажите как должно быть?
11. Arni - 02 Августа, 2011 - 18:50:24 - перейти к сообщению
OrmaJever неверно хотел сказать, что нужно не так.

CODE (html):
скопировать код в буфер обмена
  1. <a href="?id=%s" value="#edit" name="modal">


А так

CODE (html):
скопировать код в буфер обмена
  1. <a  onclick="myfunc('%s')" value="#edit" name="modal">


И у вас должна быть функция

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. function myfunc(id){
  3.     alert('Создаем окно id'+id);
  4. }
  5.  


Если я вас опять не правильно понимаю, то сори. Зачем вы пишете что переходите по ссылке?
12. OrmaJever - 02 Августа, 2011 - 18:52:22 - перейти к сообщению
Arni имено так.
13. BoJlod9I - 02 Августа, 2011 - 19:00:21 - перейти к сообщению
Arni можешь в асю отписать? 352559304
(Добавление)
Вот мой JQ куда его тут нужно всунуть?


CODE (javascript):
скопировать код в буфер обмена
  1. $(document).ready(function() {  
  2.     $('a[name=modal]').click(function(e) {
  3.     e.preventDefault();
  4.     var id = $(this).attr('value');
  5.  
  6.         var maskHeight = $(document).height();
  7.     var maskWidth = $(window).width();
  8.  
  9.     $('#mask').css({'width':maskWidth,'height':maskHeight});
  10.  
  11.     $('#mask').fadeIn(1000);
  12.     $('#mask').fadeTo("slow",0.8);
  13.  
  14.     var winH = $(window).height();
  15.     var winW = $(window).width();
  16.  
  17.    $(id).css('top',  winH/2-$(id).height()/2);
  18.     $(id).css('left', winW/2-$(id).width()/2);
  19.  
  20.     $(id).fadeIn(2000);
  21.  
  22.    });
  23.  
  24.     $('.window .close').click(function (e) {
  25. e.preventDefault();
  26.     $('#mask, .window').hide();
  27.     });
  28.  
  29.     $('#mask').click(function () {
  30.     $(this).hide();
  31.     $('.window').hide();
  32.     });
  33.  
  34.     });  
  35.        
14. Arni - 02 Августа, 2011 - 19:44:57 - перейти к сообщению
С учетом того что мы наконецто разобрались что вы надумали сделать то давайте отметим ошибки которые вы делаете. После устранения которых, можна будет переписать этот код более грамотно.

1. Зачем вам этот print() ? echo работает и быстрее и проблем меньше с ним. Поэтому было бы проще так.

CODE (php):
скопировать код в буфер обмена
  1.  
  2. do
  3.                 {
  4.                 echo '<tr>
  5.                                <td><input name="id[]" type="checkbox" value="'.$result["id"].'" /></td>
  6.                                <td>'.$result["id"].'</td>
  7.                                <td>'.$result["id"].'</td>
  8.                                <td>'.$result["id"].'</td>
  9.                                <td>'.$result["id"].'</td>
  10.                                <td>'.$result["id"].'</td>
  11.                                <td>'.$result["id"].'</td>
  12.                                <td>'.$result["id"].'</td>
  13.                                <td>'.$result["id"].'</td>
  14.                                <td>'.$result["id"].'</td>
  15.                                <td>'.$result["id"].'</td>
  16.                                <td>'.$result["id"].'</td>
  17.                                <td>'.$result["id"].'</td>
  18.                                <td width="21"><img class="click-me" alt="'.$result["id"].'" src="../style/edit.png"/></td>
  19.                        </tr>'
  20. }while ($result = mysql_fetch_array($read));
  21.  


Я как и любой другой программист лентяй, поэтому, значения '.$result["id"].' правильно где нужно повыставляйте сами. И обратите внимание, уже смотреть на все это легче. Также, я убрас специально тег ссылки поскольку он тут никому не нужен, для того чтобы появился указатель мыши в виде пальчика используйте css cursor: pointer; Вайш афди я спрятл в alt="" его потом оттуда достать очень просто. Сделаете пишите. Повешаем обработчик на это событие и все будет ок.

2. Вы явно намеревались отправить пользователя по ссылке, передав с ней свой айди, и после загрузки этой страницы должно было открыться окно? Если да то сделайте первый пункт и отпишитесь в теме я помогу с тем что дальше. Потому что тут шаг за шагом надо сделать все как следует.
(Добавление)
Теперь, в заголовках этого документа, под словом этот я имею ввиду все то что мы уже загрузили, должен висеть обработчик.

Что-то типа такого.

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. $(document).ready(function(){
  3.     $('.click-me').click(function() {
  4.        alert('Hi window!'+$(this).attr('alt'));
  5.     });
  6. });
  7.  


Если алерт сработал и вывел Hi window! 23 (ну или чето) правильно, заначит можна ити дальше.
15. BoJlod9I - 02 Августа, 2011 - 20:09:51 - перейти к сообщению
да работает пише разные ид для "Hi window"

 

Powered by ExBB FM 1.0 RC1