Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Kirim data dari javascript ke database mysql

JavaScript, seperti yang didefinisikan dalam pertanyaan Anda, tidak dapat langsung bekerja dengan MySql. Ini karena tidak berjalan di komputer yang sama.

JavaScript berjalan di sisi klien (di browser), dan database biasanya ada di sisi server. Anda mungkin perlu menggunakan bahasa sisi server perantara (seperti PHP, Java, .Net, atau tumpukan JavaScript sisi server seperti Node.js) untuk melakukan kueri.

Berikut adalah tutorial tentang cara menulis beberapa kode yang akan mengikat PHP, JavaScript, dan MySql bersama-sama, dengan kode yang berjalan baik di browser, dan di server:

http://www.w3schools.com/php/php_ajax_database.asp

Dan inilah kode dari halaman itu. Ini tidak sama persis dengan skenario Anda (melakukan kueri, dan tidak menyimpan data dalam DB), tetapi mungkin membantu Anda mulai memahami jenis interaksi yang Anda perlukan agar ini berfungsi.

Secara khusus, perhatikan potongan kode dari artikel tersebut.

Potongan Javascript:

xmlhttp.open("GET","getuser.php?q="+str,true);
xmlhttp.send();

Bit kode PHP:

mysql_select_db("ajax_demo", $con);
$result = mysql_query($sql);
// ...
$row = mysql_fetch_array($result)
mysql_close($con);

Juga, setelah Anda memahami cara kerja kode semacam ini, saya sarankan Anda menggunakan perpustakaan JavaScript jQuery untuk melakukan panggilan AJAX Anda . Ini jauh lebih bersih dan lebih mudah untuk ditangani daripada dukungan AJAX bawaan, dan Anda tidak perlu menulis kode khusus browser, karena jQuery memiliki dukungan lintas-browser bawaan. Inilah halaman untuk dokumentasi jQuery AJAX API .

Kode dari artikel

Kode HTML/Javascript:

<html>
<head>
<script type="text/javascript">
function showUser(str)
{
if (str=="")
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","getuser.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>

<form>
<select name="users" onchange="showUser(this.value)">
<option value="">Select a person:</option>
<option value="1">Peter Griffin</option>
<option value="2">Lois Griffin</option>
<option value="3">Glenn Quagmire</option>
<option value="4">Joseph Swanson</option>
</select>
</form>
<br />
<div id="txtHint"><b>Person info will be listed here.</b></div>

</body>
</html>

Kode PHP:

<?php
$q=$_GET["q"];

$con = mysql_connect('localhost', 'peter', 'abc123');
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("ajax_demo", $con);

$sql="SELECT * FROM user WHERE id = '".$q."'";

$result = mysql_query($sql);

echo "<table border='1'>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
<th>Hometown</th>
<th>Job</th>
</tr>";

while($row = mysql_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['FirstName'] . "</td>";
  echo "<td>" . $row['LastName'] . "</td>";
  echo "<td>" . $row['Age'] . "</td>";
  echo "<td>" . $row['Hometown'] . "</td>";
  echo "<td>" . $row['Job'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tampilkan pesan kesalahan SQL

  2. berhenti memasukkan data ke dalam database saat menyegarkan halaman

  3. Bagaimana cara menyisipkan gambar dalam gumpalan di tabel mysql hanya menggunakan sintaks sql (tanpa PHP)?

  4. Bagaimana cara menghindari garis bawah dalam kueri string dalam hibernasi dan SQL?

  5. MySQL MariaDB – Kueri Menggunakan Tabel Temp