Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » MySql/PHP: общие вопросы

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Открыть новую тему     Написать ответ в эту тему

zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
if (is_numeric($var2) && is_numeric($var1))
 

 
сейчас работает
 
но это? Я не понимаю,
 

Код:
 
if($var0 = null){
          echo '<b style="color:red;">Birthday missing</b>';
 

 
Поле «День рождения» в базе данных - «null»
 

Код:
 
       $var0 = $row->birthday;
        $var1 = substr($var0, 0, 4);  
        $var2 = $row->year;
 
 
         if (is_numeric($var2) && is_numeric($var1)){  // работает
          echo $var2 - $var1;  
         }
        if($var0 = null){
          echo '<b style="color:red;">Birthday missing</b>';  // это не работает
        }
        if(!is_numeric($var2)){
            echo '<b style="color:red;">Year missing</b>';  // работает
}  


Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 10:57 25-11-2022 | Исправлено: zagorisback, 10:58 25-11-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback
да сколько можно одно и то же?
if ($var0 == null)
один = это присвоение

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 10:59 25-11-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 
 

Цитата:
да сколько можно одно и то же?
if ($var0 == null)
один = это присвоение

 
Ты предшествовал мне Я тоже туда попал,
== Это то же самое
Решено
благодарю вас
 


Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 11:08 25-11-2022 | Исправлено: zagorisback, 11:08 25-11-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 
http://forum.ru-board.com/topic.cgi?forum=31&topic=4472&start=1320#4
 
Я не смог решить это
Надежда никогда не умирает

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 10:23 26-11-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
Я не смог решить это
Надежда никогда не умирает

я написал там все, что нужно. реализация уже будет конкретной, всего кода там нет.

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 11:05 26-11-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как получить все изображения из галереи IMDB?
 
https://www.imdb.com/title/tt0070047/mediaindex
 
202 photos
 

Цитата:
<script type="application/ld+json">{
  "@context": "http://schema.org",
  "@type": "ImageGallery",
  "url": "/title/tt0070047/mediaindex",
  "image": [
    {
      "@type": "ImageObject",
      .......................................
      "

 
 

Код:
 
<?php
 
$id = 'tt0070047' ; // example id
$c = file_get_contents("https://www.imdb.com/title/$id/mediaindex");
 
// retrieve the JSON data
$d = new DomDocument();
@$d->loadHTML($c);
 
// parse the HTML to retrieve the "ld+json" only
$xp = new domxpath($d);
$jsonScripts = $xp->query( '//script[@type="application/ld+json"]' );
$json = trim( $jsonScripts->item(0)->nodeValue ); // get the first script only (it should be unique anyway)
 
// decode the JSON string we find into a associative array
$data = json_decode( $json, true );
 
// you can now use this array to query the data you want
 
echo '<br>';
 
$image_gallery = $data['ImageGallery'];
echo "ImageGallery: $image_gallery" ;
 
?>
 
 

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 12:39 27-11-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback
$data['image'] даст массив, перебирать его.

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 00:17 28-11-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 

Код:
$image_gallery = $data['image'][0]['url'];

 
Таким образом, отображается только одно изображение
 
Я хотел бы извлечь их все и загрузить их в определенную папку, сохраняя с именем «imdbid» и «caption»
 
так
 
Max von Sydow in Изгоняющий дьявола (1973) tt0070047.jpg
 
 

Код:
 
array(48) {
  [0]=>
  array(7) {
    ["@type"]=>
    string(11) "ImageObject"
    ["width"]=>
    string(3) "500"
    ["height"]=>
    string(3) "358"
    ["url"]=>
    string(125) "https://m.media-amazon.com/images/M/MV5BYWFlMGEyMTAtZDdjMi00NGM2LTk3NWYtNGVmNjYyNjhjYmQyXkEyXkFqcGdeQXVyMDc2NTEzMw@@._V1_.jpg"
    ["mainEntityOfPage"]=>
    string(41) "/title/tt0070047/mediaviewer/rm3231301121"
    ["contentUrl"]=>
    string(125) "https://m.media-amazon.com/images/M/MV5BYWFlMGEyMTAtZDdjMi00NGM2LTk3NWYtNGVmNjYyNjhjYmQyXkEyXkFqcGdeQXVyMDc2NTEzMw@@._V1_.jpg"
    ["caption"]=>
    string(144) "Max von Sydow in Изгоняющий дьявола (1973)"
  }
  [1]=>
 

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 09:06 28-11-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
Таким образом, отображается только одно изображение

я же сказал - в цикле.

Код:
if (is_array($data['image']))
foreach($data['image'] as $image) {
// делаем что хотим с $image
}

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 09:26 28-11-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 

 
Теперь я пытаюсь их скачать,
За исключением того, что caption имеет текст на русском языке, его можно найти на английском языке (оригинал)
 

Код:
if (is_array($data['image']))
foreach($data['image'] as $image) {
// делаем что хотим с $image
echo '<div>';
echo("<img src='" . $image['url'] . "' id='rcorners1'/>");
echo $image['caption'];
echo '</div>';
}  

 
   
 
Добавлено:
 

Код:
$idtitle = 'tt0070047' ; // example id
    $c = file_get_contents("https://www.imdb.com/title/$idtitle/mediaindex");

 
https://www.imdb.com/title/tt0070047/mediaindex
 
 
https://www.imdb.com/title/tt0070047/mediaindex?page=1
https://www.imdb.com/title/tt0070047/mediaindex?page=2
https://www.imdb.com/title/tt0070047/mediaindex?page=3
https://www.imdb.com/title/tt0070047/mediaindex?page=4
https://www.imdb.com/title/tt0070047/mediaindex?page=5
 
 
Я могу скачать изображения первой страницы по ссылке выше, есть 5 страниц
Как проверить, есть ли другие страницы, начиная с ссылки выше, и вставить их в загрузку?
 
 

Код:
 
$idtitle = 'tt0070047' ; // example id
    $c = file_get_contents("https://www.imdb.com/title/$idtitle/mediaindex");
 
 
/*
    $idname = 'nm0000971';
    $c = file_get_contents("https://www.imdb.com/name/$idname/mediaindex");
*/
 
// retrieve the JSON data
$d = new DomDocument();
@$d->loadHTML($c);
 
// parse the HTML to retrieve the "ld+json" only
$xp = new domxpath($d);
$jsonScripts = $xp->query( '//script[@type="application/ld+json"]' );
$json = trim( $jsonScripts->item(0)->nodeValue ); // get the first script only (it should be unique anyway)
 
// decode the JSON string we find into a associative array
$data = json_decode( $json, true );
 
// you can now use this array to query the data you want
 
echo '<br>';
 
//$image_gallery = $data['image'][0]['url'];
$image_gallery = $data['image'];
//echo "ImageGallery: $image_gallery" ;
 
//echo("<img src='" . $image_gallery . "'/>");
 
if (is_array($data['image']))
foreach($data['image'] as $image) {
// делаем что хотим с $image
echo '<div>';
//echo("<img src='" . $image['url'] . "' id='rcorners1'/>");
//echo $image['caption'];
echo '</div>';
$my_save_dir = 'images/';
$ch = curl_init($image['url']);
$filename = basename($image['url']);
$complete_save_loc = $my_save_dir . $filename;
$fp = fopen($complete_save_loc, 'wb');
 
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
}  
 
 

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 15:38 28-11-2022 | Исправлено: zagorisback, 17:05 28-11-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
За исключением того, что caption имеет текст на русском языке, его можно найти на английском языке (оригинал)  

внятно задаем вопросы.
 

Цитата:
Как проверить, есть ли другие страницы, начиная с ссылки выше

вытащить номер последней страницы из ссылок перехода. или проверить, что есть Next, иначе последняя. а если нет нереходов

Цитата:
« Previous 1 2 3 4 5

значит вне диапазона.

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 22:21 28-11-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 

Цитата:
вытащить номер последней страницы из ссылок перехода. или проверить, что есть Next, иначе последняя. а если нет нереходов
 
Цитата:
« Previous 1 2 3 4 5  

 
Может быть, я написал плохо, код PHP должен проверить, присутствуют ли другие платежи, и вставить их
Есть страницы, на которых также есть 20, 30 страниц, и вставить их вручную - плохая идея
 

 
Это возможно сделать? я думаю да
 
что -то похожее на это, Но я не знаю, как это развивать, Может быть, это необходимо preg_match_all
 

Код:
 
 
$i = 1;
file_get_contents('https://www.imdb.com/title/tt0070047/mediaindex?page='.$i)
 

 

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 23:27 28-11-2022 | Исправлено: zagorisback, 23:29 28-11-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
присутствуют ли другие платежи,  

какие платежи?
 
если страницы, я же так и сказал - проверять наличие этого элемента, переходя по порядку. если нет его на странице - все, закончились.
 
проверять наличие media_index_pagination

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 23:35 28-11-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Как мне это управлять?
 
   
 
Я хочу преобразовать минуты в «часы и минуты»
 
Теперь я вижу это
 
 
   
 
Я хотел бы просмотреть оригинальные минуты,
Наряду с сейчас и минутами с «addtion» (если присутствует)
 
пример:
 
 

Цитата:
122 - 02 Hours, 02 Minutes
132 - 02 Hours, 12 Minutes - (director's cut)  

 
query
 

Код:
array_to_string( ARRAY_AGG ( DISTINCT runningtimes.TIME || '<b> - ' || runningtimes.addition || '</b>' ), ' <br> ' ) AS duration,

 
php
 

Код:
 
 
function hoursandmins($time, $format = '%02d:%02d')
{
    if ($time < 1) {
        return;
    }
    $hours = floor($time / 60);
    $minutes = ($time % 60);
    return sprintf($format, $hours, $minutes);
}
        
        
        preg_match_all('/\d+/', $row->duration, $resultime, PREG_PATTERN_ORDER);
$resultime = $resultime[0];
        
        //var_dump($resultime);
        
        foreach ($resultime as $restime){
            
            echo $row->duration . hoursandmins($restime, '%02d Hours, %02d Minutes');
        }
 

 
 
 
 
 

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 22:11 05-12-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
array_to_string( ARRAY_AGG ( DISTINCT runningtimes.TIME || '<b> - ' || runningtimes.addition || '</b>' ), ' <br> ' ) AS duration,

зачем это делать в SQL?? объединяйте как нужно в php.

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 23:04 05-12-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
зачем это делать в SQL?? объединяйте как нужно в php.

 
Почему в PHP?
В SQL это быстрее
Позвольте мне пример того, что вы имеете в виду
и сравнение, какой метод лучший, SQL или PHP

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 14:01 06-12-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
Почему в PHP?

да потому. это его задача, форматировать и обрабатывать так, как хочется.
задача SQL - выдать результат запроса.
 

Цитата:
Позвольте мне пример того

самостоятельно

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 20:54 06-12-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
путаница
Я должен создать папку внутри "Images_movies" и внутри этого, чтобы поместить фотографии
 
images_movie, существует
Богатый и бедный (1983) - TT0189021 (папка, которая будет создана)
photo.jpg внутри второй папки
 

 
 
images_movies -> Богатый и бедный (1983) - tt0189021 -> photo.jpg
 
 
Что-то здесь не так
 

Код:
$dirname = 'images_movies/'.$dir.'/';
 
if (!is_dir($dir = $title.' - ' .$f)) mkdir($title.' - '.$f);
 
$folder = $dirname.$title.' - '.$f;
 
if (!file_exists($folder.'_'.$u.'_'.$images.'.jpg'))
 
file_put_contents($folder.'_'.$u.'_'.$images.'.jpg'

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 22:28 08-12-2022 | Исправлено: zagorisback, 22:29 08-12-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
$dir =  

зачем?
 
echo getcwd();
что показывает? если использовать относительные пути, то нужно находиться в той папке, от которой они отсчитываются. или использовать полный путь.

Всего записей: 15114 | Зарегистр. 20-09-2014 | Отправлено: 22:43 08-12-2022
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Решенная ошибка
Теперь я могу скачать все изображения с сервера IMDB.com, подключенного к фильму, и поместить их в папку

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 13:03 09-12-2022
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Компьютерный форум Ru.Board » Интернет » Web-программирование » MySql/PHP: общие вопросы


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru