PHP.SU

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

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

> Найдено сообщений: 89
alsio Отправлено: 01 Января, 2014 - 13:08:29 • Тема: Сравнение дат • Форум: Вопросы новичков

Ответов: 6
Просмотров: 508
LIME пишет:
alsio пишет:
лежит в БД в "русском" формате dd.mm.yy

еще раз- надо исправлять...в данной ситуации решить проблему невозможно


Вот блин! Но что делать, приходится учиться на своих ошибках...

Ну, допустим, я переведу все даты в БД в нужный формат. Вопрос сравнения отпадет. Встанет пара других:
1. как выводить даты в удобоваримом для юзера формате?
2. как вводить даты в БД? У меня используется datepicker и надо, чтобы юзер выбрал русскую дату, а записалась она американской.
alsio Отправлено: 01 Января, 2014 - 01:09:32 • Тема: Сравнение дат • Форум: Вопросы новичков

Ответов: 6
Просмотров: 508
В таблицу циклом выводится инфа из БД. Есть поле "дата" (лежит в БД в "русском" формате dd.mm.yy). Надо подсвечивать строки с датой старше 20 дней.

Проблема в том, что сравнивать приходится с датой в "американском" формате yy.mm.dd... Попробовал перевести свою дату в такой формат, но дальше не получается...

PHP:
скопировать код в буфер обмена
  1.  
  2. $alert_date=date("yymmdd",strtotime("-20 day"));
  3. while ($row = mysql_fetch_array($res)) {
  4.   $conv_date1=($row['creatdate']);
  5.   $tmp = explode('.',$conv_date1);
  6.   $day = (int)$tmp[0];
  7.   $month = (int)$tmp[1];
  8.   $year = $tmp[2];
  9.   $conv_date2=$year,$month,$day;
  10.   if($conv_date2<=$alert_date){$bg='#ff9999';}else{$bg='#fff';}?>
  11.   <tr>
  12.     <td valign="top" <? echo ("bgcolor='".$bg."'"); ?>><? echo (" ".$row["creatdate"]." "); ?></td>
  13.     <td valign="top" <? echo ("bgcolor='".$bg."'"); ?>><? echo (" ".$row["info"]." "); ?></td>
  14.   </tr>
  15. <? } ?>
  16.  


Ну, во-первых, это понятное дело, не работает. Как правильно?

А во-вторых, здесь цикла то нет. Только по последней строчке будет работать...

Или какие еще есть варианты? Помогайте, плиз... Закатив глазки
alsio Отправлено: 20 Декабря, 2013 - 23:47:08 • Тема: Вывод из БД отмеченных чекбоксов • Форум: Вопросы новичков

Ответов: 5
Просмотров: 395
kotyara1979 пишет:
Весьма сложно что то вам посоветовать, не зная чего вы хотите. Поконкретнее можно?


Да вроде в 1 посте все понятно описано. Да и вопрос снимается (спасибо, rudakoff)
(Добавление)
rudakoff пишет:
Касательно SQL-запроса:
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. $sql = "SELECT * FROM zip WHERE zip_id IN (".implode(",", $_REQUEST['box']).") ORDER BY zip_creatdate DESC, zip_id DESC";
  3. $res = mysql_query($sql) OR die(mysql_error());
  4.  


СПАСИБО! То, что надо.
closed
alsio Отправлено: 20 Декабря, 2013 - 08:45:31 • Тема: Вывод из БД отмеченных чекбоксов • Форум: Вопросы новичков

Ответов: 5
Просмотров: 395
Извините, не хотел ломать ничьи глаза Улыбка

А по поводу
caballero пишет:
прочитать значения чекбоксов и добавить условия в SQL запрос


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

Значения чекбоксов я прочитал, а как правильно написать SQL запрос, не понимаю.
alsio Отправлено: 19 Декабря, 2013 - 22:38:44 • Тема: Вывод из БД отмеченных чекбоксов • Форум: Вопросы новичков

Ответов: 5
Просмотров: 395
Есть таблица, в которую циклом выводятся данные из БД:

PHP:
скопировать код в буфер обмена
  1. <table width="200" border="0" cellspacing="0" cellpadding="0">
  2. <tr class="tablebar">
  3. <td width="16">Чекбокс</td>
  4. <td width="50">Дата</td>
  5. <td width="50">Статус</td>
  6. <td width="100">Инфо</td>
  7. </tr>
  8. <? while ($row = mysql_fetch_array($res)) {
  9. <tr>
  10. <td><? echo ("<input type=\"checkbox\" name=\"box[]\" value=\"".$row["zip_id"]."\" /> "); ?></td>
  11. <td><? echo (" ".$row["zip_creatdate"]." "); ?></td>
  12. <td><? echo (" ".$row["zip_status"]." "); ?></td>
  13. <td><? echo (" ".$row["zip_info"]." "); ?></td>
  14. </tr>
  15. <? } ?>
  16. </table>


нужно, чтобы обработчик делал какие-то действия с записями, которые отмечены чекбоксами. Конкретной инфы что-то не нашел. Нашлось такое:

PHP:
скопировать код в буфер обмена
  1. <?
  2. if(isset($_POST['box']))
  3. {
  4. foreach($_POST['box'] as $x)
  5. {
  6. echo $x;
  7. }
  8. }
  9. ?>


этот код выводит в строчку номера id, выделенные чекбоксами.

А как его заставить делать какие-то действия с записями? Например, вывести только записи, выделенные чекбоксами, типа:
PHP:
скопировать код в буфер обмена
  1. <?
  2. $sql = "SELECT * FROM zip WHERE zip_id='$x' ORDER BY zip_creatdate DESC, zip_id DESC";
  3. $res = mysql_query($sql) or die(mysql_error());
  4. ?>
alsio Отправлено: 16 Декабря, 2013 - 19:52:30 • Тема: Скрипт прибавления к дате 30 дней • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 1125
Deonis пишет:
Смотрите такой вариант


Большое спасибо! То, что надо!

closed
alsio Отправлено: 16 Декабря, 2013 - 18:46:58 • Тема: Выделение строк разным цветом по значению из БД • Форум: Вопросы новичков

Ответов: 8
Просмотров: 676
Все получилось. Для тех, кому тоже понадобится, рабочий код:

PHP:
скопировать код в буфер обмена
  1. <? while ($row = mysql_fetch_array($res)) {
  2. if($row['status']==1){$bg='ffff99';} elseif($row['status']==2){$bg='#ffcc99';} elseif($row['status']==3){$bg='#d1d1d1';} else{$bg='';}?>
  3.   <tr <?PHP echo ("bgcolor='".$bg."'"); ?>>
  4.     <td valign="top"><? echo (" ".$row["zip_date"]." "); ?></td>
  5.     <td valign="top"><? echo (" ".$row["zip_status"]." "); ?></td>
  6.     <td valign="top"><? echo (" ".$row["zip_info"]." "); ?></td>
  7.   </tr>
  8. <? } ?>


(мелкие правки: в tr закрывающий ">" добавлен, "#" должен быть в каждом "$bg", иначе не работает)

СПАСИБО, 3d_killer!!!
closed
alsio Отправлено: 15 Декабря, 2013 - 21:36:57 • Тема: Выделение строк разным цветом по значению из БД • Форум: Вопросы новичков

Ответов: 8
Просмотров: 676
3d_killer пишет:
верно


Спасибо! Если что не получится, завтра спрошу Улыбка
alsio Отправлено: 15 Декабря, 2013 - 21:32:04 • Тема: Выделение строк разным цветом по значению из БД • Форум: Вопросы новичков

Ответов: 8
Просмотров: 676
3d_killer пишет:
PHP:
скопировать код в буфер обмена
  1. <? while ($row = mysql_fetch_array($res)) {
  2. if($row['status']==1){$bg='red';} else{$bg='';}?>
  3.   <tr <?PHP echo ("bgcolor='#".$bg."'"); ?>
  4.     <td valign="top"><? echo (" ".$row["zip_date"]." "); ?></td>
  5.     <td valign="top"><? echo (" ".$row["zip_status"]." "); ?></td>
  6.     <td valign="top"><? echo (" ".$row["zip_info"]." "); ?></td>
  7.   </tr>
  8. <? } ?>


че сложного то?


Я php не особо. Улыбка Так, учусь на примерах из сети. Про это чего-то быстро не нашел.
Спасибо, завтра попробую.
(Добавление)
3d_killer пишет:
тык я показал...


А если статусов несколько - добавлять еще else if ?
alsio Отправлено: 15 Декабря, 2013 - 21:26:56 • Тема: Выделение строк разным цветом по значению из БД • Форум: Вопросы новичков

Ответов: 8
Просмотров: 676
Ts.Saltan пишет:
Я так понимаю, в зависимости от значения $row["zip_status"] должен меняться цвет строки?
Какие значения может принимать $row["zip_status"]?


Совершенно верно.

Значений статуса есть несколько (хотя может и увеличиваться). Ну, допустим, три:
"хорошо"-зеленый цвет
"плохо"-красный цвет
"никак"-без раскраски

Подскажите на этом примере, а дальше я под себя подстрою.
alsio Отправлено: 15 Декабря, 2013 - 20:50:52 • Тема: Выделение строк разным цветом по значению из БД • Форум: Вопросы новичков

Ответов: 8
Просмотров: 676
Есть таблица, в которую циклом выводятся данные из БД. Все данные в БД имеют поле "Статус". Вопрос, как в этой таблице выделить строки разными цветами в зависимости от "Статуса"?

Код таблицы:
CODE (html):
скопировать код в буфер обмена
  1. <table width="1200" border="0" cellspacing="1" cellpadding="5" bgcolor="#005b7f">
  2.   <tr class="tablebar">
  3.     <td>Дата</td>
  4.     <td>Статус</td>
  5.     <td>Информация</td>
  6.   </tr>
  7.   <? while ($row = mysql_fetch_array($res)) { ?>
  8.   <tr>
  9.     <td valign="top"><? echo (" ".$row["zip_date"]." "); ?></td>
  10.     <td valign="top"><? echo (" ".$row["zip_status"]." "); ?></td>
  11.     <td valign="top"><? echo (" ".$row["zip_info"]." "); ?></td>
  12.   </tr>
  13. <? } ?>
  14. </table>
alsio Отправлено: 15 Декабря, 2013 - 20:03:08 • Тема: Скрипт прибавления к дате 30 дней • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 1125
Есть поле формы с календарем datepicker. По умолчанию отображается текущая дата. Надо рядом сделать кнопку/ссылку, по нажатию которой дата увеличивалась бы на N-дней. На 30, допустим.

Поле формы:
CODE (html):
скопировать код в буфер обмена
  1. <input name="date" type="text" size="8" class="datepicker" value="<? echo ("$current_date"); ?>"/>


Нашел такой скрипт:
CODE (javascript):
скопировать код в буфер обмена
  1. var d = new Date(2003, 11, 31);
  2. d = new Date(d.valueOf()+720*60*60*1000); // добавляем 720*60*60*1000 миллисекунд (30 дней)
  3.  


Вроде, что надо. Только как его к календарю прикрутить? Подскажите, плиз.
alsio Отправлено: 07 Ноября, 2013 - 19:26:19 • Тема: Как правильно организовать БД? • Форум: Вопросы новичков

Ответов: 8
Просмотров: 297
Ch_chov пишет:
А где он будет использоваться? Присоединять таблицу ведь все равно по второму ИД будете.


Да как-то казалось, что обязательно нужен автоинкремент. А так да, нигде использоваться не будет, вроде.
alsio Отправлено: 07 Ноября, 2013 - 18:50:23 • Тема: Как правильно организовать БД? • Форум: Вопросы новичков

Ответов: 8
Просмотров: 297
Ch_chov пишет:
alsio пишет:
нужна еще одна таблица 'telefony_sotrudnikov' с полями: id, sotrudnik_id, tel

А зачем два поля для ИД?


Ну, первый ид - индивидуальный порядковый номер в этой таблице (автоинкримент). Второй - ид сотрудника из главной таблицы. Вроде так.
(Добавление)
Kandiar пишет:
Правильно. Это 1 нормальная форма БД. (Их вроде 6, но желательно помнить 3 первые!)
Первая нормальная форма – любое поле любой записи хранит только одно значение.


А можно подробнее, где узнать про эти формы. А то я только 1 знаю, получается Хммм...
alsio Отправлено: 05 Ноября, 2013 - 21:18:11 • Тема: Как правильно организовать БД? • Форум: Вопросы новичков

Ответов: 8
Просмотров: 297
Извините за глупый, наверное, вопрос. Я самоучка и только начинаю познавать науку...

Как правильно организовать БД?
Пример:
БД из 1 таблицы 'sotrudniki' с полями: id, name, adress, tel

Все хорошо и просто, пока не потребуется для кого-то ввести 2-3...10 номеров телефона, например. Понятно, что делать для этого 10 полей 'tel' не серьезно.
Как я понимаю, нужна еще одна таблица 'telefony_sotrudnikov' с полями: id, sotrudnik_id, tel, где каждому сотруднику к его ид можно прикрепить кучу телефонов... Так?

Получается, в 1 таблице 'sotrudniki' поле 'tel' уже не нужно. А если таких полей (имеющих свои таблицы) много, то от 1 таблицы ничего и не останется. И поиск по полям это сильно усложняет (для меня Улыбка

И вот я задумался, правильно ли так делать?

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB