Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengintegrasikan Nilai Dijana PHP dengan Selamat ke dalam JavaScript pada Halaman Web?

Bagaimana untuk Mengintegrasikan Nilai Dijana PHP dengan Selamat ke dalam JavaScript pada Halaman Web?

Patricia Arquette
Patricia Arquetteasal
2024-10-26 11:50:02898semak imbas

How to Safely Integrate PHP-Generated Values into JavaScript on a Webpage?

Mengintegrasikan Nilai Dijana PHP ke dalam JavaScript pada Halaman Web

Soalan:

Bagaimana anda boleh menggabungkan nilai yang dijana oleh PHP ke dalam kod JavaScript pada halaman web?

Pendekatan berikut cuba tetapi tidak menghasilkan hasil yang diingini:

<?php
  $htmlString= 'testing';
?>
<html>
  <body>
    <script type="text/javascript">
      var htmlString=<?php echo $htmlString; ?>;
      alert(htmlString);
    </script>
  </body>
</html>

Jawapan:

Amaran Keselamatan: Penyelesaian yang dicadangkan dalam soalan adalah terdedah kepada serangan Skrip Merentas Tapak (XSS). Untuk mengurangkan risiko ini, adalah disyorkan untuk menggunakan json_encode() sebaliknya.

Penyelesaian:

Untuk menyepadukan nilai yang dijana PHP dengan tepat ke dalam JavaScript, ubah suai kod seperti berikut :

<?php
  $htmlString= 'testing';
?>
<html>
  <body>
    <script type="text/javascript">
      // Enclose the PHP tag within quotes
      var htmlString="<?php echo $htmlString; ?>";
      alert(htmlString);
    </script>
  </body>
</html>

Petua Penyelesaian Masalah:

  • Periksa konsol JavaScript penyemak imbas anda untuk kemungkinan ralat.
  • Bandingkan paparan sumber halaman web dalam penyemak imbas dengan kod anda untuk mengenal pasti sebarang jurang.

Nota Tambahan:

Dalam bahagian PHP, 'pengujian' diberikan kepada $htmlString tanpa memasukkan petikan dalam nilai literal. Petikan dalam kod adalah terutamanya untuk penterjemah PHP untuk mengenali rentetan literal.

Atas ialah kandungan terperinci Bagaimana untuk Mengintegrasikan Nilai Dijana PHP dengan Selamat ke dalam JavaScript pada Halaman Web?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn