HTML код не анализируется в PHP при использовании API для получения данных. Есть идеи, почему это происходит? - PullRequest
0 голосов
/ 16 июня 2020

Итак, я написал сценарий php для связи с API из Buzzsprout (веб-сайт, на котором размещены подкасты) с помощью CURL. Сценарий PHP, запущенный сам по себе, работает нормально, и данные API извлекаются, но когда я включаю код HTML в файл PHP, код снова появляется в том виде, в каком он есть, без синтаксического анализа в браузере. В консоли нет журналов ошибок и предупреждений. Я новичок в API и PHP и не могу понять, почему это происходит.


Вот сценарий: - Я удалил идентификатор учетной записи и токен авторизации по очевидным причинам.

<?PHP
   header('Content-Type: application/json'); // Specify the type of data
   $ch = curl_init('https://www.buzzsprout.com/api/*(my-account-id)*/episodes'); 
   $authorization = "Authorization: Bearer *(my security token)*";
   curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization )); 
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   curl_setopt($ch, CURLOPT_HTTPGET, 1);
   curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
   $result = curl_exec($ch);
   curl_close($ch);   
   echo $result; 
?>

Это извлекает необходимые данные и отображается в браузере. Но если добавить мой файл html, страница просто отображает код html без его анализа.


вот последний файл:

<?php

header('Content-Type: application/json'); // Specify the type of data
       $ch = curl_init('https://www.buzzsprout.com/api/839368/episodes'); // Initialise cURL

       $authorization = "Authorization: Bearer 6f7bfe7b6cf43bf326873d478fbfb562"; // Prepare the authorisation token
       curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization )); // Inject the token into the header
       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
       curl_setopt($ch, CURLOPT_HTTPGET, 1); // Specify the request method as POST

       curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // This will follow any redirects
       $result = curl_exec($ch); // Execute the cURL statement
       curl_close($ch); // Close the cURL connection

echo $result;

?>
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <title>Babushka</title>
  <meta content="width=device-width, initial-scale=1.0" name="viewport">
  <meta content="" name="keywords">
  <meta content="" name="description">

  <!-- Favicons -->
  <link href="img/favicon.png" rel="icon">
  <link href="img/apple-touch-icon.png" rel="apple-touch-icon">

  <!-- Google Fonts -->
  <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,700,700i|Raleway:300,400,500,700,800" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Kelly+Slab&display=swap" rel="stylesheet">
  <!-- Bootstrap CSS File -->
  <link href="lib/bootstrap/css/bootstrap.min.css" rel="stylesheet">

  <!-- Libraries CSS Files -->
  <link href="lib/font-awesome/css/font-awesome.min.css" rel="stylesheet">
  <link href="lib/animate/animate.min.css" rel="stylesheet">
  <link href="lib/venobox/venobox.css" rel="stylesheet">
  <link href="lib/owlcarousel/assets/owl.carousel.min.css" rel="stylesheet">

  <!-- Main Stylesheet File -->
  <link href="css/style.css" rel="stylesheet">

  <!-- =======================================================
    Theme Name: TheEvent
    Theme URL: https://bootstrapmade.com/theevent-conference-event-bootstrap-template/
    Author: BootstrapMade.com
    License: https://bootstrapmade.com/license/
  ======================================================= -->
</head>

<body>

  <!--==========================
    Header
  ============================-->
  <header id="header">
    <div class="container">

      <div id="logo" class="pull-left">
        <!-- Uncomment below if you prefer to use a text logo -->
        <h1><a style="font-family: 'Kelly Slab', cursive; font-weight:900; font-size:22px;" href="#main"><span>Babushka</span></a></h1>

      </div>

      <nav id="nav-menu-container">
        <ul class="nav-menu">
          <li class="menu-active"><a href="#intro">Home</a></li>
          <li><a href="#contact">Contact Us</a></li>
          <li><a href="#schedule">About Us</a></li>
          <li><a href="#venue">Contributions</a></li>  
          <li class="buy-tickets"><a href="AbstractFileSubmission.php">Explore Our Stories</a></li>
        </ul>
      </nav><!-- #nav-menu-container -->
    </div>



  </header><!-- #header -->




  <a href="#" class="back-to-top"><i class="fa fa-angle-up"></i></a>

  <!-- JavaScript Libraries -->
  <script src="lib/jquery/jquery.min.js"></script>
  <script src="lib/jquery/jquery-migrate.min.js"></script>
  <script src="lib/bootstrap/js/bootstrap.bundle.min.js"></script>
  <script src="lib/easing/easing.min.js"></script>
  <script src="lib/superfish/hoverIntent.js"></script>
  <script src="lib/superfish/superfish.min.js"></script>
  <script src="lib/wow/wow.min.js"></script>
  <script src="lib/venobox/venobox.min.js"></script>
  <script src="lib/owlcarousel/owl.carousel.min.js"></script>

  <!-- Contact Form JavaScript File -->
  <script src="contactform/contactform.js"></script>

  <!-- Template Main Javascript File -->
  <script src="js/main.js"></script>
</body>

</html>

Не обращайте внимания на HTML веб-сайта, он еще не завершен.

Вот скриншот после того, как я включил код HTML: - снимок экрана браузера после того, как HTML включен в PHP

1 Ответ

0 голосов
/ 16 июня 2020

Вы сначала повторяете $result ваших PHP и , затем начинаете с <!DOCTYPE html> -> Это не сработает. Вам нужно будет повторить PHP $result в body из HTML do c в соответствующей позиции.

...