Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ตอนนี้ผมทำโครงการเกี่ยวกับ ระบบเครือข่าย โดยใช้ระบบปฏิบัติการ CentOS 6.5 ตอนนี้ระบบเครือข่ายของผมทำไปได้ประมาน 80-90%



 

ตอนนี้ผมทำโครงการเกี่ยวกับ ระบบเครือข่าย โดยใช้ระบบปฏิบัติการ CentOS 6.5 ตอนนี้ระบบเครือข่ายของผมทำไปได้ประมาน 80-90%

 



Topic : 133079



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์




ตอนนี้ผมทำโครงการเกี่ยวกับ ระบบเครือข่าย โดนใช้ระบบปฏิบัติการ CentOS 6.5 ตอนนี้ระบบเครือข่ายของผมทำไปได้ประมาน 80-90% แล้วครับ ติดตรง Web server และตอนนี้ผมมีปัญหาเกี่ยวกับไฟล์เว็บ ดังนี้
1. ตอนแรก ผมได้ทำเว็บ โดยใช้โปรแกรม DW CS6 แล้วเอาไฟล์เว็บที่ทำใน DW ทั้งหมด ไปโยนใส่เครื่อง Server ที่มี Web server ปรากฏว่า มันไม่แสดงอะไรเลย มีเพียงหน้าจอขาวๆ เท่านั้นครับ
2. พอข้อที่ 1 ทำไม่ได้ ผมจึงเปลี่ยนมาเขียน html+php เอง โดยมี Code ดังนี้
------------------------------------------------------------------------------

Code (PHP)
<?php session_start(); ob_start(); ?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>เข้าสู่ระบบสมาชิก</title>
    <style>
body {
  background-color: lightblue;
  text-align: center;
}
</style>

</head>
<body>
    <?php
   include("connects/conn.php");

    if(isset($_POST['send']) != null){
        $username = $_POST['username'];
        $password = $_POST['password'];
        if($username == null && $password == null){
            echo " NOT NULL";
        }else{
            $sql = "SELECT * FROM member WHERE `username` = '".$username."' AND `password` = '".$password."' ";
            $query = mysql_query($sql);
            $num = mysql_num_rows($query);
                if($num > 0){
                    $sql = "SELECT * FROM login WHERE `username` = '".$username."' ";
                    $query = mysql_query($sql);
                    $num = mysql_num_rows($query);
                        if($num > 0 ){
                            echo "<script type=\"text/javascript\">
                                alert(\"Username นี้กำลังเข้าใจงานอยู่ในระบบ ไม่สามารถ Login ซ้ำกันได้ครับ!\");
                                history.back();
                                </script>";
                        }else{
                            $sql = "INSERT INTO login (`username`,`log_time`) VALUES ('".$username."',NOW())";
                            $query = mysql_query($sql);
                                if($query){
                                    $_SESSION['username'] = $username;
                                    $_SESSION['password'] = $password;
                                    @header("location: home.php");
                                }else{
                                    echo "Error!";
                                }
                        }
                        }else{
                            echo "<script type=\"text/javascript\">
                                alert(\"เข้าสู่ระบบล้อเหลว ชื่อหรือรหัสผ่านไม่ถูกต้อง\");
                                history.back();
                                </script>";
                        }
                }
        }
    ?>

    <form action="" method="POST">
    <div class="container" >
    <h1>เข้าสู่ระบบสมาชิก</h1>
    <p>
        <label for="username">Username : </label>
        <input type="text" id="username" name="username" placeholder="username" />
        </p>
    </div>
<br>
        <div>
        <p>
        <label for="password">Password : </label>
        <input type="password" id="password" name="password" placeholder="password" />
        </p>
        </div>
        <br>
    <div>
        <input type="submit" name="send" value="Login...">
        <a href="register.php">register!</a>
    </div>
    </form>
</body>
</html>

--------------------------------------------------------------
ปรากฏว่า มันเปิดได้ครับ แต่ เหมือนมันจะเรียงลำดับ Code ผิด
อันแรกคือผมให้มันเชคหาค่า if($username == null && $password == null) คือค่าว่าง ถ้าไม่มีการกรอกข้อมูล ก็ให้ echo "NO NULL"
ต่อมาคือผมให้มันเชคว่า มีข้อมูล Username และ Password นี้อยู่ในฐานข้อมูลหรือไม่
$sql = "SELECT * FROM member WHERE `username` = '".$username."' AND `password` = '".$password."' ";
ต่อมา ผมให้มันหาค่าว่า มี Username อยู่ใน Table Login หรือป้าว ถ้ามี แสดงว่า มีคน Login อยู่ ให้ alert ว่ามีผู้ใช้งานอยู่ แต่ถ้าไม่มี ผมก็จะให้ทำการ INSERT INTO เข้าไปใน Table Login แล้วให้ location ไปอีกหน้านึง แต่ถ้าไม่มีข้อมูล Username อยู่ใน Table ให้ echo " ไม่มีข้อมูลนี้ โปรดสมัครสมาชิก"
แต่ .... ประเด็นมันอยู่ที่ พอผมเอาไฟล์โค้ตตัวนี้ไปใส่ในเครื่อง Web Server แล้ว มันกลับ อ่านจากข้างล่าง ก็คือมัน echo "ไม่มีข้อมูล Username อยู่ในระบบ" ทั้งๆที่ผมได้ทำการ INSERT ข้อมูลเข้าไปใน Table member แล้ว ลองหาวิธีแก้แล้ว ก็ทำไม่ได้สักที ขอผู้รู้มาช่วยแก้ทีครับ
ปล. ผมมือใหม่หัดเขียนโค้ตครับ แก้ไม่ได้จริงๆ



Tag : MySQL, HTML, Linux









ประวัติการแก้ไข
2019-02-07 13:24:58
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2019-02-07 13:23:37 By : naan.parinya View : 599 Reply : 12
 

 

No. 1



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


อันดับแรก เอา tag code ของ php ที่อยู่ด้านบน ช่องกรอก Code ครอบโค๊ดด้วยครับ จะได้สวยงามน่าอ่าน






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-07 14:07:20 By : Chaidhanan
 


 

No. 2



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



สถานะออฟไลน์


ผมยังไม่เห็นคำว่า ไม่มีข้อมูล Username อยู่ในระบบ อยู่ในโค้ดตรงส่วนไหนเลย คุณไปเอามาจากไหน?

การจัด indent ทำไมมันสะเปะสะปะขนาดนี้ จะไล่ดูว่าอันไหนเป็น end if, else, elseif ของอันไหนนี่ดูไม่ออกเลย ฝึกจัด indent ให้เป็นระเบียบหน่อยจะดีกว่าไหมครับ? เวลาตรวจสอบอะไรก็จะได้ดูง่าย ไล่ง่าย.

ถ้าลองบน local แล้วมันมีข้อมูลแต่บน server ขึ้นประมาณว่าไม่มีข้อมูล ก็ต้องเปิด db ดูให้แน่ใจจริงๆว่าข้อมูลมันมี เพราะบางทีลืมอัพแล้วนึกเอาว่าทำไปแล้วก็มี.

ตอน redirect แล้วด้วยคำสั่ง header โปรแกรมมันไม่หยุดทำงานนะครับ มันจะทำต่อไปจนหมดไฟล์นั้น ถ้าจะ redirect แล้วไม่ทำอะไรต่อสำหรับไฟล์นั้น ให้สั่ง exit ด้วย.


ประวัติการแก้ไข
2019-02-07 19:58:23
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-07 19:56:38 By : mr.v
 

 

No. 3



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ถ้าเป็นระบบที่ต้องใช้งานจริง อาจโดน SQL injection ได้ มาฝากแค่นี้ล่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-08 09:38:21 By : apisitp
 


 

No. 4



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


ผมลองทำในเครื่องคอมพิวเตอร์ของผม และได้จำลอง local ใช้ได้ปกติเลยครับ ไม่ติดอะไรสักอย่าง แต่พอเอาไปโยนใส่ในเครื่องเครื่องเชิฟเวอร์ที่ผมได้ทำขึ้นมาเอง กลับไม่มีหน้ามันเป็นหน้าขาวๆ ผม งง ว่าทำไม ผมลองทำในคอมผม มันก็ใช้ได้ปกติ แต่เอาไปโยนในเครื่องเชิฟ มันกลับไม่ได้ โค้ตก็ตัวเดียวกัน

ส่วนโค้ต ผมก็หาตามเว็บนอกบ้าง แล้วเอามาประยุกต์ใช้ โค้ตมันเลยจะดู งง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-08 09:46:42 By : naan.parinya
 


 

No. 5



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 2 เขียนโดย : mr.v เมื่อวันที่ 2019-02-07 19:56:38
รายละเอียดของการตอบ ::
บรรทัดที่ 50-55 อ่ะครับ ที่จริงมันจะ alert ขึ้นมาว่า ไม่พอ Username นี้ในระบบ แต่ผมพิมพ์ผิด

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-08 09:48:18 By : naan.parinya
 


 

No. 6



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


ตั้งเซิฟเวอร์ linux เอง ไปดู virtual host ว่ากำหนด log file ไว้ที่ไหน ไปอ่านดูก่อน ว่ามันเออเร่อร์อะไร

อีกอย่าง ob_start; เอาออกไปก็ได้ โปรแกรม ไม่มีการ หยุดการแสดงผล เริ่มแล้วก็ออก

เพิ่ม
error_reporting(-1);
ini_set('display_errors', 1);
แทนที่ ob_start; มีเออเร่อร์อะไรมันจะได้แจ้งออกมา
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-08 12:00:58 By : Chaidhanan
 


 

No. 7



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


อีกเรื่อง PHP เวอร์ชั่นต่างกันหรือเปล่า...ลอง Debug ดูครับ พื้นฐานเท่าไป
เปิด Chrome > กด F12 เปิด DevTools > พิมพ์หน้าเว็บที่ chrome > สักเกตการเปลี่ยนแปลงที่ DevTools
ดูตรงแท็บ Consloe หรือ Network ว่ามีอะไร Error ไหม ลองคลิกแท็บอื่ืน ๆ ของ DevTools
ถ้ามีอะไร Error หาสาเหตุ แก้ไขตามนั้น ว่ากันไปครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-08 13:59:05 By : apisitp
 


 

No. 8



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


ได้แล้วครับ ขอบคุณพี่ๆมากๆเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-17 14:35:27 By : naan.parinya
 


 

No. 9



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


รบกวนอีกอย่างนึงครับ ตอนนี้ผมได้ทำระบบ Login แบบเก็บค่า Logstatus กับ Lastupdate ถ้ามี User login เข้ามา Logstatus = 1 และจะอับเดตเวลาเข้า แล้วผมได้ตั้งค่าไว้ว่า ภายใน 3 นาที ไม่อัพเดทเลย แสดงว่า User อาจจะไม่อยู่ หรือปิดหน้าจอไปแล้ว Logstatus = 0 ทันที
ตอนนี้ผมติดปัญหาที่ เมื่อครบ 3 นาทีแล้ว Logstatus = 0 แต่เวลารีเฟรชหน้าเพจ แล้วมันไม่เด้งออกจากระบบครับ
คือผมอยากให้มันเด้งออกจากระบบไปเลยเมื่อ Logstatos = 0
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-17 14:40:32 By : naan.parinya
 


 

No. 10



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


Code logout.php

<?php
session_start();

require_once("connect.php");

$sql = "UPDATE member SET LoginStatus = '0', LastUpdate = '0000-00-00 00:00:00' WHERE UserID = '".$_SESSION["UserID"]."' ";
$query = mysqli_query($con,$sql);


session_destroy();
unset($_SESSION['LastUpdate']);
header("location:login.php");
?>

code connect.php
<?php

ini_set('display_errors', 1);
error_reporting(~0);

$servername = "localhost";
$username = "root";
$password = "1234";
$dbname = "mmm";

$con = mysqli_connect($servername,$username,$password,$dbname);

if (mysqli_connect_errno())
{
echo "Database Connect Failed : " . mysqli_connect_error();
exit();
}


$intRejectTime = 1; // เก็บค่าเป็นนาที
$sql = "UPDATE member SET LoginStatus = '0', LastUpdate = '0000-00-00 00:00:00' WHERE 1 AND DATE_ADD(LastUpdate, INTERVAL $intRejectTime MINUTE) <= NOW() ";
$query = mysqli_query($con,$sql);
?>


ประวัติการแก้ไข
2019-02-17 14:45:00
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-17 14:41:57 By : naan.parinya
 


 

No. 11



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


กรณีเปิดหน้าจอค้าง ให้ใช้ javascript
Code (JavaScript)
var x=false;
function wait_new_time(){
  if(x) clearTimeout(x);
  x=setTimeout( 'window.close()', 60*60*3000);
}
$(document).mousemove(()=>{
  wait_new_time();
});


และกำหนดอายุของ session expired แค่ 3 นาที default มัน 7200 วินาที มั้ง จำไม่ได้ แต่มากกว่า 3 นาทีแน่ๆ

เอา tag ภาษาครอบด้วยนะครับ ครั้งที่ 3 ไม่ตอบล่ะนะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-17 17:07:12 By : Chaidhanan
 


 

No. 12



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


ได้แล้วครับ ต้องขอบคุณพี่ๆ มากๆครับ พอดีผมมือใหม่ ไม่เคยเขียน php
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-02-17 21:36:12 By : naan.parinya
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ตอนนี้ผมทำโครงการเกี่ยวกับ ระบบเครือข่าย โดยใช้ระบบปฏิบัติการ CentOS 6.5 ตอนนี้ระบบเครือข่ายของผมทำไปได้ประมาน 80-90%
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่