ตัวอย่างโค้ด PHP ผิดพลาดแบบ syntax error
Syntax Error
ความผิดพลาดทางไวยากรณ์ คือ เขียนโค้ดไม่ตรงรูปแบบของภาษา อาจเขียนผิด ไม่ครบ หรือเกินไป
Runtime Error
ความผิดพลาดทางการประมวลผล คือ เรียกใช้สิ่งที่ไม่มีอยู่ เปิดแฟ้มผิด ข้อมูลไม่เข้ากัน ฟังก์ชันเก่า
Logic Error
ความผิดพลาดทางตรรก คือ กำหนดเงื่อนไขผิดพลาด ในการควบคุมทางตรรกะ มักรู้เมื่อพบปัญหา
กิจกรรมหาจุดผิดพลาด
- จงวงกลมจุดที่ผิดใน code มา 5 จุด แล้วเปรียบเทียบกับเพื่อน
- จงหาที่ผิดมา 19 ถึง 20 จุด และแก้ไขให้ถูกต้อง
ตัวอย่างหลังแก้ไขที่ผิดแล้ว https://github.com/thaiall/programming-page/blob/master/css/fcpsc471_03.htm
ตัวอย่างที่ https://github.com/thaiall/programming-page/tree/master/training49 (error1 + error2)
ตัวอย่าง 2 โปรแกรมที่ผิดพลาด (error code) 63 บรรทัดใน 8 แฟ้ม และ 194 บรรทัดใน 14 แฟ้ม (#)
Short code : php+mysql+insert (2560)
/* 1- use phpmyadmin in test database */
create table mem(uid int not null auto_increment,u  varchar(50) p varchar(50), 
t varchar(1), primary key (uid));
insert into mem values (0,"admin","nation",a");
insert into mem values (0,"boy","girl",u);
/* 2 - index.php */
<a href="signin.php">signin.php</a>
<a href="signout.php">signout.php</a>
<a href="list.php">list.php</a>
<a href="insert.php">insert.php<a>
/* 3 - signin.php */
<form action="check.php">
<input name=u><input name=p>
<input type=submit></from>
/* 4 - signout.php */
<?php session_start();
$_SESSION["t"] = "";
echo '<a ref=index.php>back</a>'; ?>
/* 5 - check.php */
<?php session_start();
$connect = new mysqli("127.0.0.1", "root", "", "test")
$result = $connect->query("select * from mem");
$_SESSION["t"] = "";
if ($result->num_rows > 0) 
  while($row = $result->fetch_assoc()) {
    if($row["u"] = $_REQUEST["u"] && $row["p"] == $_REQUEST["p"]) $_SESSION["t"] = $row("t");
  }
echo '<a href='index.php'>back</a><br/>' . $_SESSION["t"];
$connect->close(); ?>
/* 6 - list.php */
<?php session_start();
if(!isset($_SESSION["t"]) || strlen($_SESSION["t"]) = 0) {
echo '<a href=index.php>back</a> exit()';
}
$connect = new mysqli("127.0.0.1", "root", "", "test");
$result = $connect->query("select * from members");
echo $result->num_rows . "<br/>";
if ($result->num_rows > 0) {
  while($row = $result->fetch_assoc()) {
    echo  $row['u'] .  $row['p'] .  $row['t'] . "<br/>";
  } }
echo '<a href=index.php>back</a>' ;
$connect => close(); ?>
/* 7 - insert.php */
<form action="addrec.php" method="post">
<input name=u><input name=p><input name=t><input type=submit
</form>
/* 8 - addrec.php */
<?php session_start();
if(!isset($_session["t"]) || strlen($_SESSION["t"]) == 0) {
die ('<a href=index.php>back</a>');
}
$connect = new mysqli("127.0.0.1");
$sql = "insert into mem values (0,'" .$_POST["user"] ."','" . $_POST["p"] ."','". $_POST["t"] ."')";
$result = $connect->query($query);
if($result === FALSE)  echo "$sql : failed"; else echo "$sql : succeeded";
console.log '<br/><a href=index.php>back</a>' ;
$connect > close(); ?>
/* update mem set t="a";
update mem set t="u",p="nation" where u = "burin";
delete from $tb  where u ='" . $_GET['u'] ."'";
delete from $tb  where uid =" . $_GET['uid'] ; */
rspsocial
Thaiall.com