PHP.SU

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

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

> Найдено сообщений: 22
Triton682 Отправлено: 09 Августа, 2013 - 04:36:09 • Тема: syntax error • Форум: Вопросы новичков

Ответов: 5
Просмотров: 192

teragalaxy пишет:
Эмм.. а почему тег пхп заглавными буквами или это не имеет значения <?PHP ???

форум так выделяет, ставит в верхний регистр, разницы нету.
Triton682 Отправлено: 09 Августа, 2013 - 01:43:38 • Тема: Вычитание элементов массива • Форум: Вопросы новичков

Ответов: 7
Просмотров: 769

Цитата:
[0] - [1]; [1] - [2]; [2] - [3]

вычитая таким образом
Спойлер (Отобразить)

что делать с последним элементом массива? из него(из последнего) вычитать нечего будет, тк элементов массива больше не останется.
Triton682 Отправлено: 09 Августа, 2013 - 01:01:40 • Тема: syntax error • Форум: Вопросы новичков

Ответов: 5
Просмотров: 192
или так:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.  
  4. $in = '<th class="menu-header"><a onclick="open_popup(\'#modal_window_login\');"href="#">войти</a></th>';
  5. echo $in;
  6.  
  7. ?>
  8.  

результат:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <th class="menu-header"><a onclick="open_popup('#modal_window_login');"href="#">войти</a></th>
  3.  
Triton682 Отправлено: 08 Августа, 2013 - 17:05:24 • Тема: Проблема с кодировкой при выводе • Форум: Вопросы новичков

Ответов: 3
Просмотров: 150

И все файлы должны быть в кодировке UTF-8, как менять - зависит от того в какой программе кодите.
Triton682 Отправлено: 08 Августа, 2013 - 14:47:44 • Тема: Не могу понять выражение в цикле do-while • Форум: Вопросы новичков

Ответов: 16
Просмотров: 812
всем спасибо, буду внимательней Улыбка
Triton682 Отправлено: 08 Августа, 2013 - 06:07:06 • Тема: вывести запрос с LIMIT • Форум: Вопросы новичков

Ответов: 2
Просмотров: 148
благодарю!
Triton682 Отправлено: 08 Августа, 2013 - 05:03:35 • Тема: вывести запрос с LIMIT • Форум: Вопросы новичков

Ответов: 2
Просмотров: 148
Как вывести результат запроса
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM TABLE LIMIT 0,11

покажите
Triton682 Отправлено: 07 Августа, 2013 - 20:29:04 • Тема: Не могу понять выражение в цикле do-while • Форум: Вопросы новичков

Ответов: 16
Просмотров: 812
если я правильно понял(а если не правильно то скажите что у меня ужасного такого) то вы отсылаете меня читать про ужасный код из-за цикла do-while. Хотя do-while мне нужен для того чтобы исполнить 1 итерацию независимо от условия (истинности выражения). т.е.
сделав так:
PHP:
скопировать код в буфер обмена
  1.  
  2. while($array=mysql_fetch_array($resultat)){
  3.     echo $array['id'].' '.$array['name'].'<br />';
  4.    
  5. };
  6.  

я получу записи с 2 по 11.
если do-while:
PHP:
скопировать код в буфер обмена
  1.  
  2. do{
  3.     echo $array['id'].' '.$array['name'].'<br />';
  4.    
  5. }while($array=mysql_fetch_array($resultat));
  6.  

(один раз он в любом случае исполнит тело цикла) то получу записи с 1 по 11 - как и нужно мне.

Само выражение $array=mysql_fetch_array($resultat) непонятно. Т.е. я понимаю так:
Пока $array равно mysql_fetch_array($resulatat) выполнять тело цикла. в переменной $array хранится массив данных $resultat обработанный mysql_fetch_array, так же mysql_fetch_array($resultat) возвратит обработанный массив данных полученный из $resultat.
т.е. я вижу это как 1=1, что должно зациклится.


mysql_fetch_array($resultat) = 10 и $array = 10.

Цель которую я преследую, вывести
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM TABLE LIMIT 0,11

понятное дело так оно не выводится(выведет одну запись и только первую, а не 11):
PHP:
скопировать код в буфер обмена
  1.  
  2. $zapros='SELECT * FROM table LIMIT 0,11';
  3. $resultat=mysql_query($zapros);
  4. $array=mysql_fetch_array($resultat);
  5. echo $array['id'].' '.$array['name'];
  6.  

мне же, нужно выводить результат запроса SELECT * FROM table LIMIT 0,11, когда в лимите могут менятся значения "с какой начинать" и "сколько".

про принцип цикла я знаю, но использовал всегда с численными выражениями вроде:
PHP:
скопировать код в буфер обмена
  1.  
  2. a=0;
  3. b=10;
  4. do{
  5.    ...
  6. }while($a++<$b);
  7.  

поэтому я немогу понять выражение while($array=mysql_fetch_array($resultat)).
Покажите мне тогда как правильно выводить SELECT * FROM table LIMIT 0,11, когда значения лимита меняются.
Triton682 Отправлено: 07 Августа, 2013 - 18:08:13 • Тема: Не могу понять выражение в цикле do-while • Форум: Вопросы новичков

Ответов: 16
Просмотров: 812
Fetis пишет:

где веревка?)


НО в переменной $zapros, у тебя в данный момент просто текст, а не результат выполнения запроса Улыбка

не смотри на эту строку! Радость это проверка $limit
(Добавление)
esterio пишет:
Popov detected Радость Радость Радость Радость
А если чесно выбросите урокы попова. Причина

не вижу ни одного попова, даже не видел его творений.
честно говоря, минусонул бы вас
(Добавление)
snikers987 пишет:
mysql_fetch_array возвращает true пока есть строки в результате, когда строки заканчиваются mysql_fetch_array возвратит false и цикл while вернет управление.

спасибо, закрыто.
Triton682 Отправлено: 07 Августа, 2013 - 17:59:24 • Тема: Не могу понять выражение в цикле do-while • Форум: Вопросы новичков

Ответов: 16
Просмотров: 812
Fetis пишет:
Дак ты разбил массив который пришел из запроса, и тебе надо выводить НЕ echo $zapros, а echo $array['id'] например. и тоже использовать ассоциативный массив

Второй случай, попробуй заместо mysql_fetch_array, использовать mysql_fetch_assoc.

что? зачем мне выводить $array['id']?
echo $zapros.'<br />'; - это у меня проверка, что находится в $limit
я это не понимаю: while($array=mysql_fetch_array($resultat));
Triton682 Отправлено: 07 Августа, 2013 - 17:31:37 • Тема: Узнать последний id в таблице • Форум: Вопросы новичков

Ответов: 13
Просмотров: 801
DelphinPRO пишет:
Alex_dark74 пишет:
Как сформировать запрос, что бы выбрать строку с максимальным ID&

а нафига оно нужно?

например, если id auto increment, знать id последней добавленной записи
Triton682 Отправлено: 07 Августа, 2013 - 17:29:13 • Тема: Не могу понять выражение в цикле do-while • Форум: Вопросы новичков

Ответов: 16
Просмотров: 812
PHP:
скопировать код в буфер обмена
  1.  
  2. $zapros='SELECT * FROM table LIMIT '.$limit.'';
  3. $resultat=mysql_query($zapros);
  4. $array=mysql_fetch_array($resultat);
  5.  
  6. echo $zapros.'<br />';
  7.  
  8. do{
  9.     echo $array['id'].' '.$array['name'].'<br />';
  10. }while($array=mysql_fetch_array($resultat)); //не понимаю
  11.  


Спойлер (Отобразить)


$array возвращает массив с поле=значение. в echo возвращает "Array", как и mysql_fetch_array($resultat). Я неправильно понимаю что получается выражение: Array=Array, было бы так, цикл просто напросто зациклился бы.
Вопрос, как это понимать? разжуйте.
Triton682 Отправлено: 07 Августа, 2013 - 17:15:33 • Тема: Узнать последний id в таблице • Форум: Вопросы новичков

Ответов: 13
Просмотров: 801
или так:
PHP:
скопировать код в буфер обмена
  1.  
  2. /*------------------Получаем максимальный ID в таблице-------------*/
  3. $query='SELECT MAX(id) FROM tablename';
  4. $query=mysql_fetch_row(mysql_query($query));
  5. $max_id=$query[0];
  6.  
  7. echo $max_id.' - Максимальный ID в таблице.<br />';
  8. /*-----------------------------------------------------------------*/
  9.  
  10. /*------------------------Выводим запись с максимальным ID---------*/
  11. $query='SELECT * FROM tablename WHERE id='.$max_id.'';
  12. $result=mysql_fetch_array(mysql_query($query));
  13.  
  14. echo $result['field1'].' '.$result['field2'].' '.$result['field3'];
  15. /*-----------------------------------------------------------------*/
  16.  


field1,field2,field3 = имя полей.
tablename = имя таблицы.
id = имя поля с primary key.
Triton682 Отправлено: 03 Августа, 2013 - 13:22:29 • Тема: Неверно ссылается анкор "Изучение PHP" • Форум: Колонка администратора

Ответов: 0
Просмотров: 854
Заметил что, со страницы http://www.php.su/learnphp/vars/ ссылка с анкором "Изучение PHP" ссылается на несуществующую страницу. Со страницы http://www.php.su/learnphp/vars/ url "Изучение PHP" такой - "http://www.php.su/vars/", должен быть такой - "http://www.php.su/learnphp/"

в двух словах поменять /vars/ на /learnphp/ в этом месте(с)ВАШ КЭП:
CODE (html):
скопировать код в буфер обмена
  1. <a href="/vars/" title="PHP.SU Изучение PHP">Изучение PHP</a>
Triton682 Отправлено: 03 Августа, 2013 - 12:33:08 • Тема: Инкрементирование всех id в таблице • Форум: Напишите за меня, пожалуйста

Ответов: 9
Просмотров: 75
Panoptik пишет:
нужно делать от последнего к минимальному, ибо когда id (как первичный ключ) будет попадать на существующее значение будет ошибка
но mysql насколько я помню не умеет делать апдейт если делать вложенный запрос к этой же таблице. как вариант можно увеличить значение на самый большой id, а потом уменьшить на эту же цифру -1 в 2 запроса

спасибо, принялся за реализацию
(Добавление)
Реализовал
спасибо Panoptik!

Страниц (2): [1] 2 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB