Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2010, 08:42   #1
bush007
Форумчанин
 
Аватар для bush007
 
Регистрация: 10.02.2009
Сообщений: 226
По умолчанию конвертировать дату

Здравствуйте.
Скрипт выбора даты передает значение, например, 29-03-2010. В базе есть значения типа "data", формат 2010-03-29. Не получается выбрать из базы те значения, которые соответствуют выбранной дате.

передаю выбранную дату:
Код:
<form action = "search3.php" method= "post">
	<input name="s" type="text" .....
переменная приходит
Код:
 $acce=$_POST ['s'];
		   echo "Пришло : "; echo $acce;// 29-03-2010
		   echo '<br>';
		   echo '---------';
		  $new=date('Y-m-d',strtotime($acce));
		   echo "<br>";
		   echo "Перевернули:"; echo $new;//2010-03-29
............................
$query='select * from semestr where date_open=$new';
echo"<table>";
	echo '<tr>
	<td></td>';
	$result=mysql_query($query);
	while ($row = mysql_fetch_array($result))  //ругается здесь
	{ 
	echo "<tr><td>";
	echo $row[date_open];//интересующая дата
	//echo ">";
	echo $row[small_name_predmet];// соседнее поле
	echo "</td>";
.............................................
Ругается: "Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource"
Я понимаю что значение в запросе не соответствует тому что ищу. Как корректно сделать ?
Или привести передаваемое значение "29-03-2010" к значению "2010-03-29", которое устроит мускуль в запросе?
следи за собой. Будь осторожен.
Не забывай свой первый "hello world".

Последний раз редактировалось bush007; 30.03.2010 в 08:44.
bush007 вне форума Ответить с цитированием
Старый 30.03.2010, 19:55   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Можно попробовать привести к нужному виду с помощью date
motorway вне форума Ответить с цитированием
Старый 31.03.2010, 00:16   #3
bush007
Форумчанин
 
Аватар для bush007
 
Регистрация: 10.02.2009
Сообщений: 226
По умолчанию

Эээ... ну я как бы и спрашиваю, как привести то??
следи за собой. Будь осторожен.
Не забывай свой первый "hello world".
bush007 вне форума Ответить с цитированием
Старый 31.03.2010, 11:08   #4
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

Код:
$query='select * from semestr where date_open=\'$new\'';
так попробуй
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Старый 06.04.2010, 08:28   #5
bush007
Форумчанин
 
Аватар для bush007
 
Регистрация: 10.02.2009
Сообщений: 226
По умолчанию

Вопрос в том, как перевернуть приходящие данные, что бы они устраивали тип "data" в mysql.
Код:
//---------------переворачиваем дату, было 22-07-2010
$date_el = explode("-",$_GET['d']);
		   $fff=array("$date_el[2]","$date_el[1]","$date_el[0]");
		   $ggg= implode("-",$fff);		 
//----------------------------------- стало 2010-07-22
следи за собой. Будь осторожен.
Не забывай свой первый "hello world".

Последний раз редактировалось bush007; 06.04.2010 в 08:30.
bush007 вне форума Ответить с цитированием
Старый 06.04.2010, 11:31   #6
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Проблему решил ?
ssdm вне форума Ответить с цитированием
Старый 06.04.2010, 12:21   #7
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

mv28jam тебе уже указал где ошибка. Она не в переводе одной даты в другую, а в синтаксисе выборки SELECT.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 10.04.2010, 01:56   #8
ralnik
 
Регистрация: 30.03.2010
Сообщений: 7
По умолчанию

А разве while это не цикл с постусловием?
я всегда использую в таком виде:
do
{
}while()
а в примере наоборот!
поправте меня если я не прав...
ralnik вне форума Ответить с цитированием
Старый 11.04.2010, 00:40   #9
bush007
Форумчанин
 
Аватар для bush007
 
Регистрация: 10.02.2009
Сообщений: 226
По умолчанию

Цитата:
Сообщение от ssdm Посмотреть сообщение
Проблему решил ?
Да, решил. Как раз эти три строки и решили . Правда сегодня узнал, что в этом скрипте календаря можно было изменить вывод даты на нужный формат и не надо было заморачиваться с переворачиванием переменной. Ну ведь проблему можно решить десятком способов, так? Значит я нашел 11-й.
оффтоп-- Трудно понять код непрофессионала
следи за собой. Будь осторожен.
Не забывай свой первый "hello world".
bush007 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как конвертировать видео zmey31313 Компоненты Delphi 1 05.01.2010 23:23
Конвертировать из C# в C++ RIO Фриланс 2 26.03.2008 21:21