[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Из JS в PHP
braindbrigada
Есть функция преобразования даты из формата "1292959790" в "22:29:50 21 декабря 2010" написаная на JS.

function preobDate(stamp_text)
{
//alert (stamp_text);
if (stamp_text==0 ) return (" не редактировалась");
var month= new Array ("января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря");
var obj_time = new Date();
a=((stamp_text-0)-0*3600)*1000;//11
obj_time.setTime(a);
date_text=((obj_time.getHours()<10)?"0"+obj_time.getHours():obj_time.getHours())+":"+((obj_time.getMinutes()<10)?"0"+obj_time.getMinutes():obj_time.getMinutes())+":"+((obj_time.getSeconds()<10)?"0"+obj_time.getSeconds():obj_time.getSeconds())+" ";
date_text+="<br> "+obj_time.getDate()+" "+month[obj_time.getMonth()]+" "+obj_time.getFullYear();
return (date_text);
//return (stamp_text);
}


А нужна на PHP из формата "1292959790" в формат "2010-12-21"

Может кто поможет? :(



Спустя 2 минуты, 6 секунд (26.01.2011 - 15:53) Michael написал(а):
echo date('Y-m-d',1292959790);

Спустя 9 минут, 51 секунда (26.01.2011 - 16:03) braindbrigada написал(а):
Цитата (Michael @ 26.01.2011 - 12:53)
echo date('Y-m-d',1292959790);

Спасибо, все просто и гениально! blink.gif

Спустя 2 минуты, 13 секунд (26.01.2011 - 16:05) Snus написал(а):
braindbrigada
Странно, что Вы этого не знали smile.gif Обычно это очень популярно у начинающих программистов выводить дату на своей страничке в рунете.

Спустя 6 минут, 47 секунд (26.01.2011 - 16:12) braindbrigada написал(а):
Можно ещё вопрос?

Есть часть кода:

// Извлекаем данные из таблицы sitemap

if ( $sql = mysql_query("select * from adv_advert") )
{
while($record = mysql_fetch_array($sql))
{
$data[$i]='<loc>http://www.site.ru/advert'.$record['id_advert'].'.html</loc>
<lastmod>'
.date("Y-m-d",$record['start_putdate']).'</lastmod>';
$i++;
}
// собираем воедино все записи
for($j=1; $j<$i+1; $j++)
if($data[$j])
$string = $string.'<url>'.$data[$j].'</url>';

// добавляем "шапку" и окончание xml-файла

$xml='<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
'
.$string.'</urlset>';


получается "корявый" sitemap:

<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>
http://www.site.ru/advert335.html</loc>
<lastmod>
2010-10-30</lastmod></url><url><loc>http://www.site.ru/advert459.html</loc>
<lastmod>
2010-11-30</lastmod></url><url><loc>http://www.site.ru/advert460.html</loc>
<lastmod>
2010-11-30</lastmod></url><url><loc>http://www.site.ru/advert29.html</loc>
<lastmod>
2010-08-21</lastmod></url><url><loc>http://www.site.ru/advert195.html</loc>
<lastmod>
2010-09-22</lastmod></url><url><loc>http://www.site.ru/advert194.html</loc>
<lastmod>
2010-09-22</lastmod></url><url><loc>http://www.site.ru/advert193.html</loc>
<lastmod>
2011-01-23</lastmod></url><url><loc>http://www.site.ru/advert661.html</loc>
<lastmod>
2011-01-25</lastmod></url></urlset>


Как его можно правильно форматировать?

<?xml version="1.0" encoding="UTF-8"?>
<urlset
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>
ttp://www.site.ru/advert661.html</loc>
<lastmod>
2005-01-01</lastmod>
</url>
<url>
<loc>
ttp://www.site.ru/advert009.html</loc>
<lastmod>
2010-01-01</lastmod>
</url>
</urlset>

Спустя 4 минуты, 2 секунды (26.01.2011 - 16:16) Snus написал(а):
braindbrigada
   while($record = mysql_fetch_array($sql))
{
$data[$i]='<loc>http://www.site.ru/advert'.$record['id_advert'].'.html</loc>
<lastmod>'
.date("Y-m-d",$record['start_putdate']).'</lastmod>';
$i++;
}

$formatted = '<url>';
$formatted .= implode('</url><url>', $data);
$formatted .= '</url>';

$xml = '<?xml version="1.0" encoding="UTF-8"?>';
$xml .= '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
$xml .= $formatted;
$xml .= '</urlset>';





Попробуй так

Спустя 8 минут, 12 секунд (26.01.2011 - 16:24) braindbrigada написал(а):
Snus вот что получилось:

<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url><loc>http://www.site.ru/advert535.html</loc>
<lastmod>
2010-12-21</lastmod></url><url><loc>http://www.site.ru/advert335.html</loc>
<lastmod>
2010-10-30</lastmod></url><url><loc>http://www.site.ru/advert459.html</loc>
<lastmod>
2010-11-30</lastmod></url><url><loc>http://www.site.ru/advert460.html</loc>
<lastmod>2011-01-25</lastmod></url></urlset>


Спустя 8 минут, 19 секунд (26.01.2011 - 16:32) Snus написал(а):
braindbrigada
Все такие ленивые? Тебе нужно, чтобы он на новую строчку выводил?

   while($record = mysql_fetch_array($sql))
{
$data[$i] = '<loc>http://www.site.ru/advert'.$record['id_advert'].'.html</loc>'."\n";
$data[$i] = '<lastmod>'.date("Y-m-d",$record['start_putdate']).'</lastmod>'."\n";
$i++;
}

$formatted = '<url>'."\n";
$formatted .= implode('</url>."\n".<url>', $data);
$formatted .= '</url>';

$xml = '<?xml version="1.0" encoding="UTF-8"?>';
$xml .= '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
$xml .= $formatted;
$xml .= '</urlset>';


Тебе нужно знак \n проставь в нужных местах - это переход на новую строку. Половину я тебе уже проставил для примера. Остальные - ты сам.

Спустя 6 минут, 5 секунд (26.01.2011 - 16:38) braindbrigada написал(а):
Цитата
Тебе нужно знак \n проставь в нужных местах - это переход на новую строку. Половину я тебе уже проставил для примера. Остальные - ты сам.


Snus, спасибо, но я уже так делал и \n ставил и <br>, они потом в sitemap появляются... huh.gif

Спустя 4 минуты, 56 секунд (26.01.2011 - 16:43) Snus написал(а):
braindbrigada
А ты \n в какие кавычки заносил?

Спустя 2 минуты, 27 секунд (26.01.2011 - 16:46) braindbrigada написал(а):
в двойные...

Спустя 5 минут, 36 секунд (26.01.2011 - 16:51) Snus написал(а):
braindbrigada
Тогда и не знаю даже, что посоветовать. А чем нынешний вид не нравится?

Спустя 16 минут, 2 секунды (26.01.2011 - 17:07) braindbrigada написал(а):
Snus, спасибо огромное! :)

Вот что получил:
<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>
http://www.site.ru/advert535.html</loc>
<lastmod>
2010-12-21</lastmod>
</url>
<url>
<loc>
http://www.site.ru/advert535.html</loc>
<lastmod>
2010-12-21</lastmod>
</url>
<url>
<loc>
http://www.site.ru/advert535.html</loc>
<lastmod>
2010-12-21</lastmod>
</url>
</urlset>


Изменив:
Цитата
   while($record = mysql_fetch_array($sql))
   {
     $data[$i]="\n".'<loc>http://www.site.ru/advert'.$record['id_advert'].'.html</loc>
  <lastmod>'.date("Y-m-d",$record['start_putdate']).'</lastmod>'."\n";
    $i++;
   }
   $formatted = "\n".'<url>';
   $formatted .= implode('</url>'."\n".'<url>', $data);
   $formatted .= '</url>';

   $xml = '<?xml version="1.0" encoding="UTF-8"?>';
   $xml .= '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
   $xml .= $formatted;
   $xml .= "\n".'</urlset>';

Спустя 4 минуты, 51 секунда (26.01.2011 - 17:12) Snus написал(а):
braindbrigada
Не за что! Видишь, как оказывается все просто! wink.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.