2017-01-19 90 views
0
$bugun = date("Y-m-d"); 
$dogum_cek = mysql_query("SELECT * FROM secim_uyeleri WHERE STR_TO_DATE(uye_dogum,'%d-%m-%Y') = '".$bugun."'"); 
      while ($a= mysql_fetch_array($dogum_cek)){ 
      $uye_dogum = $a['uye_dogum']; 
      $uye_isim = $a['uye_isim']; 
      $uye_tel = $a['uye_tel']; 


      echo' 
       <tr> 
       <td>'.$uye_isim.'</td> 
       <td>'.$uye_tel.'</td> 
       <td>'.$uye_dogum.'</td> 
      </tr>';} 

У меня есть столбец VARCHAR В MySQL таблицы, где я сохранить дни рождения. (Я вставил в VARCHAR из-за первенствует в том числе.) Так что теперь я должен извлекать строки с текущими дней у кого есть дни рождения , Я попытался str_to_date получить varChar как дату, но не смог получить никаких результатов.Извлечение Brithdays как формат даты из столбца VARCHAR

«uye_dogum» - это столбец varChar, где я храню дни рождения как dd-mm-YYYY.

SELECT * FROM secim_uyeleri WHERE (I NEED THIS PART) = '".$bugun."' 
+0

Извините - но OK - '' mysql_ * расширение устарели. Ошибка подавления ** всегда ** плохая идея. ** Никогда ** хранить даты в VARCHAR, так как вы не можете использовать функции DATE-запросов на них (у MySQL есть тип DATE) ... по существу, с того места, где вы находитесь, вы можете начать с самого начала. – CD001

+0

Я собираюсь использовать mysqli в хостинге, просто я хотел узнать, могу ли я получить varChar как дату. Cuase добавлено более 8000 строк и не может их изменить. Может быть, я могу получить первые 5 символов столбца (dd-mm) и сделать запрос в соответствии с этим? –

+0

Вы пожалеете об этом в долгосрочной перспективе, но если вы хотите выполнить частичное совпадение на 'd-m' против' d-m-Y', вы можете просто использовать 'LIKE' ...' "SELECT * FROM secim_uyeleri WHERE uye_dogum LIKE '". $ bugun. «%» «' ... все это очень специфично для формата. – CD001

ответ

0
$bugun = date("d-m"); 
$dogum_cek = mysql_query("SELECT uye_dogum,uye_isim,uye_tel FROM secim_uyeleri WHERE LEFT(uye_dogum,5) LIKE '".$bugun."' ORDER BY uye_isim"); 
      while ($a= mysql_fetch_array($dogum_cek)){ 
      $uye_dogum = $a['uye_dogum']; 
      $uye_isim = $a['uye_isim']; 
      $uye_tel = $a['uye_tel']; 


      echo' 
       <tr> 
       <td>'.$uye_isim.'</td> 
       <td>'.$uye_tel.'</td> 
       <td>'.$uye_dogum.'</td> 
      </tr>';} 

Решение здесь .. я могу получить все строки, как это .. За небольшие решения я буду использовать его ..

 Смежные вопросы

  • Нет связанных вопросов^_^