bagaimana cara menghubungkan file javacript di dalam php?

kenapa di console.log ada error validasi is not defined?

 <?php
	require "functions.php";

	if( isset($_POST["register"]) ) {
		echo "<script>validasi();</script>";
	}
?>

<!DOCTYPE html>
<html>
<head>
	<title>Register</title>
	<link rel="stylesheet" href="css/style.css">
</head>
<body>
	<div class="container-regis">
		<div class="wrap-form">
			<h2>Registrasi</h2>
			<form action="" method="post">
				<input type="text" name="username" id="username" placeholder="Username...">
				<input type="email" name="email" id="email" placeholder="Email...">
				<input type="password" name="password" id="password" placeholder="Password..."><br>
				<button type="submit" name="register">Daftar!</button>
			</form>
		</div>
	</div>

<script src="js/main.js"></script>
</body>
</html>
avatar iamfreestyler
@iamfreestyler

341 Kontribusi 57 Poin

Diperbarui 6 tahun yang lalu

2 Jawaban:

karena fungsi validasi() tidak terbaca oleh php..

pakai gini harusnya:


<script type="text/javascript">
      function validasi(){
          alert("Nama Wajib Diisi");
      }

     <?php
        if(isset($_POST['submit'])) {
          $nama = $_POST['nama'];
          if(empty($nama)) echo "validasi()";
        }
     ?>
 </script>
<form action="" method="post">
  <input type="text" name="nama">
  <input type="submit" name="submit">
</form>

harusnya untuk validasi script nya gk gitu.. kalau mau realtime pake validasi javascript dg menggunakan event onclick pada submit, kalau server validasi pake bahasa php..

contoh validasi dengan Javascript

 <script type="text/javascript">
  function validasi(){
    var nama = document.getElementById('nama');
    if(nama.value == ''){
      alert("Nama Harus Diisi");
      return false;
    }else{
      alert('data valid');
      // action
      return true;
    }
  }
</script>

<form action="tujuan.php" method="post">
  <input type="text" name="nama" id="nama">
  <input onclick="return validasi()" type="submit" name="submit" >
</form>

validasi php


<?php
  if(isset($_POST['submit'])) {
    $nama = $_POST['nama'];
    // cek nama
    if(empty($nama)) {
      echo "Nama Belum Diisi";
    }else{
      //lolos validasi
      header('location: tujuan.php');
    }
  }
?>

tapi untuk validasi yang lebih wajib di server side / menggunkan php..tapi kalau pake keduanya. akan lebih sip..

Semoga Membantu :)

avatar ciloxz
@ciloxz

284 Kontribusi 139 Poin

Dipost 6 tahun yang lalu

ok mkasih gan

avatar iamfreestyler
@iamfreestyler

341 Kontribusi 57 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban