Язык
Контакты
GitHub
Поддержка
Регистрация
Войти
Логин: Пароль: Запомнить:
Пользователи
Последние сообщения
Ответить
<< ... 9 10 11 12 13 ... >>

Общие вопросы новичков

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#101
тогда уже лучше через foreach.

а while служит для того чтобы если ты извлекаешь из бд не одну запись а много, пройтись не только по первой а по всем. Поэксперементируй и поймешь о чем реч:)

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#102
Цитата
а while служит для того чтобы если ты извлекаешь из бд не одну запись а много, пройтись не только по первой а по всем.

Именно это мне и нужно!

Отредактировано автором 24 Окт 2010

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#103
ну вот:)

если сделать просто

 1 
 2 
<?php $result mysql_fetch_assoc($q);
//тут обработка?>

мы обработаем лишь первую запись которую вернул запрос, а с использованием while
 1 
 2 
 3 
<?php while($result mysql_fetch_assoc($q)) {
//тут обработка
}?>

мы пройдемся по всем записям. while это нечто вроде if и foreach вместе взятых. То есть пока будут записи он будет совершать итерации. Или другими словами если выражение в скобках истино будут совершаться итерации

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#104
Написал скрипт, ух.
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
<?php mysql_query($query);

$query "SELECT * FROM news;";


while (
$row mysql_fetch_array($result)) {
echo 
$row['title']."<p>";
echo 
$row['content']."</p>";
}
mysql_close($link);?>

В общем виде

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#105
ага))) только откуда тут взялась $result и еще я конечно могу ошибаться но вроде все не в том порядке

 1 
 2 
 3 
<?php mysql_query($query);

$query "SELECT * FROM news;";?>

вроде наоборот надо))) и еще запрос выполняется а результат не присваивается никакой переменной:)
хотя
Цитата
В общем виде
так что я понял:)

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#106
 1 
 2 
 3 
 4 
 5 
 6 
<?php function sql_query($q){

      
$result mysql_query($q);
      return 
$result;

}
?>

Вот)))

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#107
а не объяснишь мне что дает эта функция. То есть какие преимущества она дает.

ведь с этой функцией ты можешь сделать так
 1 
 2 
<?php $q sql_query("blabla");?>

а без нее так
 1 
 2 
<?php $q mysql_query("blabla");?>

и в обоих случаях назад получишь одно и тоже. Или есть какойто скрытый смысл которого я не заметил?

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#108
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
<?php а не объяснишь мне что дает эта функцияТо есть какие преимущества она дает.

ведь с этой функцией ты можешь сделать так
 1 
 2 
<?php $q sql_query("blabla");?>

а без нее так
 1 
 2 
<?php $q mysql_query("blabla");?>?>

и в обоих случаях назад получишь одно и тоже. Или есть какойто скрытый смысл которого я не заметил? [/php]

Хрен его знает. Функция была написана в прошлом году. А вывод новостей просто писал под неё, пока не восстановил CMS

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#109
тогда понятно:) но скажу тебе что мне кажется что смысла в ней нет. лучше тогда сделай функцию которая будет делать запрос и возвращать данные сразу в виде массива. как вот в цмс сделано. можешь посмотреть класс /sys/fnc/db.class.php

и посмотри в любом модуле как я делаю запросы например

 1 
 2 
<?php $result DataBase::select('users'DB_COUNT, array('cond' => array('date' => 'bla')));?>
вот я выбираю количество записей из таблицы users где date = bla а в ответе получаю сразу число. Если бы я иыбирал не количество а сами записи то в ответе получил бы сразу массив. Очень удобно.

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#110
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
<?php $q mysql_query("SELECT * FROM `"$news_tb ."`"); 
$result mysql_fetch_array($q);
while (
$row mysql_fetch_array($result)) {
$row['id'] = '<tr> <td>' $row['id'] . '</td>';   
$row['title'] = '<td>' $row['title'] . '</td><td>';  
$row['author'] = '</td><td>' $row['author'] . '</td>';  
$row['hide'] = '<td>' $row['hide'] . '</td>';  
$row['top'] = '<td>' $row['top'] . '</td></tr>'

}

$cont str_replace('{NEWS_ID}'$row['id'], $cont);
$cont str_replace('{NEWS_TITLE}'$row['title'], $cont);
$cont str_replace('{NEWS_AUTHOR}'$row['author'], $cont);
$cont str_replace('{NEWS_HIDE}'$row['hide'], $cont);
$cont str_replace('{NEWS_TOP}'$row['top'], $cont);?>

выводит

Code:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\www\cms\sengine\modules\news\shownews.php on line 9

Code:
while ($row = mysql_fetch_array($result))

строка 9

Отредактировано автором 27 Окт 2010
<< ... 9 10 11 12 13 ... >>
Сейчас online: 13. Зарегистрированных: 0. Гостей: 13.