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 :: Версия для печати :: как сделать запрос в базу не разрывая вывод echo
Форумы портала PHP.SU » » Хранение данных, их вывод и обработка » как сделать запрос в базу не разрывая вывод echo

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

1. DemoriaN - 06 Сентября, 2011 - 05:43:08 - перейти к сообщению
настройка пользовательской записи.
есть возможность выбрать аватар.
PHP:
скопировать код в буфер обмена
  1.  
  2. //начало на первых строках
  3. if(!$user) {
  4. echo'
  5. ......................
  6. //примерно 200 строка
  7. <!-- BEGIN switch_avatar_local_gallery -->
  8. <tr>
  9. <td class="row1"><span class="gen">Выбрать из галлереи:</span></td>
  10. <td class="row2"><a href="index.php?module=useredit&id=32&gallery=open"><input type="button" name="avatargallery" value="Открыть галлерею" class="liteoption" /></a></td>
  11. </tr>
  12. <!-- END switch_avatar_local_gallery -->';
  13. if($_GET['gallery'] == open) {
  14. echo '
  15. <tr>
  16. <td class="row1"><span class="gen">Галлерея:</span></td><td class="row2">';
  17. $avatar=mysql_query("SELECT * FROM avatar");
  18. while (false!==($ava=mysql_fetch_assoc($avatar))) {
  19. echo'
  20. <input type=radio name="avatar" value="<? echo $ava['filename']; ?>"><img src="/images/avatars/'.$ava['filename'].'" wight="80px" height="80px" /></input>
  21. ';
  22. }}
  23. if(empty($_POST['username'])) {
  24. echo '
  25. <!-- END switch_avatar_block -->
  26. </td></tr><tr>
  27. <td class="catBottom" colspan="2" align="center" height="28"><center><input type="submit" name="submit" value="Отправить" class="form-submit"  />&nbsp;&nbsp;<input type="reset" value="Сброс" name="reset" class="form-reset" /></center></td>
  28. </tr>
  29. </table>
  30. </form>
  31.  
  32.  

потом идет логическое окончание формы
но при отправке формы - ничего не происходит.
Если я просто делаю что то совсем креативное, тогда как аналогичное было реализовано на том же phpbb 2.0.x. шаблон дергал с него.
Там тоже адреса к картинкам дергались из базы по необходимости.

В принципе сделал по другому, но хотелось бы чтобы скрипт выполнялся весь на этой странице, без необходимости делать редирект.
2. DeepVarvar - 06 Сентября, 2011 - 07:19:54 - перейти к сообщению
DemoriaN пишет:
//примерно 200 строка
За 200 строк можно создать, удалить, опять создать, отредактировать - вселенную.., а вы аватарочки выводите.

А по делу - сначала сделать все запросы, вообще все; все расчеты, вообще все; а потом уже делать ваше "затяжное" echo..
3. DemoriaN - 06 Сентября, 2011 - 08:10:38 - перейти к сообщению
phpbb2.0.x profile_add_body.tpl оригинальный файл 275 строк html кода.
по этому я очень доволен, что у меня всё влезло в 236 строчек)
4. Мелкий - 06 Сентября, 2011 - 09:30:37 - перейти к сообщению
И главное - затяжное echo делать куда удобнее так:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?/*phpкод*/?>
  2. любой html
  3. <?/*снова PHP-код*/?>
5. DemoriaN - 06 Сентября, 2011 - 17:36:12 - перейти к сообщению
Мелкий пишет:
И главное - затяжное echo делать куда удобнее так:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?/*phpкод*/?>
  2. любой html
  3. <?/*снова PHP-код*/?>

Бесспорно) вопрос в том, что если делать
PHP:
скопировать код в буфер обмена
  1.  
  2. if(!$param){
  3. echo "затяжное echo";
  4. }else {
  5. исполняемый код
  6. }
  7.  

потом не надо прокручивать в самый низ форму, где выводится ответ на запрос/выполнение последней, аля "изменения внесены, обнови страницу" или делать отдельный кейс под это, а вместо как раз этого echo выводится этот запрос на обновление. Ну по крайней мере как то так. Я не кодил пхп с выхода 4-й ревизии, уже больше половины забыл, а сейчас опять понадобилось... Растерялся

ЗЫ сейчас это echo так и реализовано.
6. White - 06 Сентября, 2011 - 18:14:52 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. <? if(!$param): ?>
  2. любой html
  3. <? endif; ?>

так тоже можно

 

Powered by ExBB FM 1.0 RC1