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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: отображение html

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: отображение html при возврате результата
broshurkaplus
Отправлено: 24 Января, 2012 - 22:37:54
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




здравствуйте
предыдущий вопрос решил.
но теперь дорабатываю

есть форма, подгружаю ее в див, отправляем ее сабмитом на айфрейм
обработчик в другом файле , он обрабатывает и возаращает

если так, то не работает
PHP:
скопировать код в буфер обмена
  1.          $resultat="<font color=red>Извините, но поле проверки заполнено неправильно, попробуйте ещё раз.</font>
  2.         <br><input class='button' type='button' onclick='show_fq();' value='задать снова' ></font><br><br>";
  3.          echo "<script>parent.document.getElementById('$div').innerHTML='$resultat'</script>";



если так то же не работает
PHP:
скопировать код в буфер обмена
  1.          $resultat="<font color=red>Извините, но поле проверки заполнено неправильно, попробуйте ещё раз.</font>
  2.         <br><input class=button type=button onclick=show_fq(); value=задать снова></font><br><br>";
  3.          echo "<script>parent.document.getElementById('$div').innerHTML='$resultat'</script>";


а если так, без кавычек

PHP:
скопировать код в буфер обмена
  1.          $resultat="<font color=red>Извините, но поле проверки заполнено неправильно, попробуйте ещё раз.</font><br><input class=button type=button onclick=show_fq(); value=задать снова></font><br><br>";
  2.          echo "<script>parent.document.getElementById('$div').innerHTML='$resultat'</script>";


то работает, но кнопку отображает из одного слова, а мне нужно в два!
с кавычками задолбался, обработчик большой и много таких возвратов, это я для себя уже загрузчик дорабатываю. тк квери форм и другие аплоадеры не катят, и некоторые в хроме ок в опере не работает а мне нужно файл загружать без перезагрузки и сразу же показывать его поресайженого из базы. Убираю обраб. ошибок файлы грузятся и все ок. но тут...

отображает из одного слова, а мне нужно в два! что делать с кавычками?
 
 Top
Bio man
Отправлено: 24 Января, 2012 - 22:53:07
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




Посмотрите исходный код страницы в браузере, может че лишнего вставляется
 
 Top
broshurkaplus
Отправлено: 25 Января, 2012 - 16:30:14
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




если в кавычках или для удобства чтения кода перенести строку, то в фрейм ответ вставляется, а в див - НЕТ ,- как бы скрипт не срабатывает, ошибки при просмотре кода нет

а без кавычек в одну строку, то работает, но не отображает value=два слова , а только два

блин хз, че такое, не пойму, вставил как есть типа костыль в хроме и опере работает пока,

может мысли у кого есть
 
 Top
pettson
Отправлено: 25 Января, 2012 - 16:44:08
Post Id



Новичок


Покинул форум
Сообщений всего: 29
Дата рег-ции: Нояб. 2011  


Помог: 3 раз(а)




Попробуйте так:
CODE (javascript):
скопировать код в буфер обмена
  1.  $resultat="<font color=red>Извините, но поле проверки заполнено неправильно, попробуйте ещё раз.</font>
  2.         <br><input class=\"button\" type=\"button\" onclick=\"show_fq();\" value=\"задать снова\" ></font><br><br>";
  3.          echo "<script>parent.document.getElementById('$div').innerHTML='$resultat'</script>";

должно заработать.
 
 Top
broshurkaplus
Отправлено: 25 Января, 2012 - 17:44:49
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




pettson
спасибо заработало
заэкранировал кавычки все ок
заэкранировал перевод строки - поставил \ перед каждым переводом в коде, теперь выглядит ровненько и красиво
все работает ща везде подправлю и покажу заказчику, пусть радуется, а то насмотрится умняка и подавай ему все без перезагрузки...

если не сложно подскажи - это из за чего?
просто такое первый раз встретил, - изза настроек каких то или что ? первернул учебник не нашел.

мы ж пхпом отдаем код скрипта во фрейм, может поэтому какие настройки у хостера, он у меня вроде супер (все 100гигов за 150р на 25доменов)

из за чего? где читнуть
 
 Top
pettson
Отправлено: 25 Января, 2012 - 18:06:50
Post Id



Новичок


Покинул форум
Сообщений всего: 29
Дата рег-ции: Нояб. 2011  


Помог: 3 раз(а)




Вот что получалось до решения проблемы:
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. <script>parent.document.getElementById('$div').innerHTML='
  3. <font color=red>Извините, но поле проверки заполнено неправильно, попробуйте ещё раз.</font><br><input class='button' type='button' onclick='show_fq();' value='задать снова' ></font><br><br>
  4. ';</script>";

У вас в строке которую вы передаете в innerHTML используются те же кавычки что, и для определения строки. Из-за этого javascript думает, что например после <input class=' конец строки все, что написано дальше считает кодом а не строкой, а так как там никакого нормального кода нет, соответственно происходит ошибка и код перестает нормально работать.

(Отредактировано автором: 25 Января, 2012 - 18:11:33)

 
 Top
broshurkaplus
Отправлено: 25 Января, 2012 - 20:23:21
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




я уже сам дошел, взял и подставил сам текст в другом таком же примере, там кавычки наоборот были , то же не мог понять, запутался в коде - то ' " " ' то " ' ' " в одном скрипте, щас под одну марку все привел.
но с переводом строки не ясно.

теперь что то перестало возвращать многорочный текст
например ввожу

это
пример 1

во фрейме

<script>parent.document.getElementById('****').innerHTML='';parent.document.getElementById('****').innerHTML='<font color=red>Извините, но вопрос <font color=blue><br>это
<br/>пример 4<br></font> уже есть в нашей библиотеке, попробуйте написать другой.</font><br><input class=\'button\' type=\'button\' onclick=\'show_fq_img();\' value=\'задать снова вопрос с картинкой ?\' >'</script>

но в див не прередает не видит походу сдесь

<br>это
<br/>пример 4<br> как привести к \
 
 Top
pettson
Отправлено: 25 Января, 2012 - 20:53:15
Post Id



Новичок


Покинул форум
Сообщений всего: 29
Дата рег-ции: Нояб. 2011  


Помог: 3 раз(а)




Выложите, пожалуйста, полные исходники (вместе с PHP).

(Отредактировано автором: 25 Января, 2012 - 20:53:48)

 
 Top
broshurkaplus
Отправлено: 25 Января, 2012 - 21:31:49
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




я подправил
в данных которыые не в бд, а возвращаю на экран через айфрейм innerHTML,( отправляются сабмитом на айфрейм)

$data_print=str_replace("\r\n","<br/>", $data_print);

стало работать как надо в хроме и опере, возврват во фрейме подсмотрел в одну строку и в див вносятся.

хотя было
$data_print=str_replace("\n","<br/>", $data_print);

не поймуУлыбка
да и в другой такой же форме, которая токо через квери пост отправляется (без загружаемого файла)
$data_print=str_replace("\n","<br/>", $data_print);
(то же методом тыка ловил)

и все ок вроде ,
походу если сабмитам то добавляется \r\n а так \n
я тока хром юзаю, в опере чего то квери бывает подтупливает

(Отредактировано автором: 25 Января, 2012 - 21:42:06)

 
 Top
Bio man
Отправлено: 25 Января, 2012 - 22:00:54
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




А не проще $data_print=nl2br($data_print); ?
 
 Top
broshurkaplus
Отправлено: 26 Января, 2012 - 18:52:11
Post Id



Посетитель


Покинул форум
Сообщений всего: 354
Дата рег-ции: Янв. 2011  
Откуда: Пружаны Бресткая обл. Беларусь


Помог: 2 раз(а)




так не катит, я проверял еще раньше и отказался от такого варианта, правда уже не помню почему и что выдавало , но точно не работало так как надо.

в принципе все ок
вопрос можно считать закрытым.
спасибо
 
 Top
pettson
Отправлено: 26 Января, 2012 - 18:53:38
Post Id



Новичок


Покинул форум
Сообщений всего: 29
Дата рег-ции: Нояб. 2011  


Помог: 3 раз(а)




Возможно, надо было так написать:

(Отредактировано автором: 26 Января, 2012 - 18:54:16)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTTP и PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB