2010-10-31 39 views
0

我似乎在此被具有誤差編碼任何幫助,將理解PHP/MySQL的編碼不工作

解析錯誤:解析錯誤在C:\瓦帕\ WWW \ espn.com \上線的login.php 19

<?php 

//Database Information 

$dbhost = "localhost"; 
$dbname = "users"; 
$dbuser = "root"; 
$dbpass = "*****"; 

//Connect to database 

mysql_connect ($dbhost, $dbuser, $dbpass)or die("Could not connect: ".mysql_error()); 
mysql_select_db($dbname) or die(mysql_error()); 

session_start(); 
$username = $_POST[‘username’]; 
$password = md5($_POST[‘password’]); 

$query = 「select * FROM users where 'username'=$username and 'password'= $password " ; 

$result = mysql_query($query); 

if (mysql_num_rows($result) != 1) { 
$error = 「Bad Login」; 
    include 「login.html」; 

} else { 
    $_SESSION[‘username’] = 「$username」; 
    include 「memberspage.php」; 
} 

?> 
+0

這裏有兩個問題,會彈出後:(1),你需要在引號中的值不列名和(2)將$ username和$ password直接放入你的SQL語句中,但沒有正確地轉義它們是一個可怕的,可怕的想法。因爲這兩個參數可能來自用戶的瀏覽器,所以您需要考慮它來自「敵對」環境。惡意的人可以很容易地修改你的SQL語句來對你的數據庫做一些討厭的事情。 – mojuba 2010-10-31 23:21:51

回答

0

您正在使用奇語錄:,而不是正確的"

從網站複製代碼時可能發生。

在PHP(和大多數其他編程語言)的唯一有效的字符串,劃定報價是'"

+0

我修正了這個警告,並且這個警告提出了 – ben 2010-10-31 23:24:12

+0

警告:mysql_num_rows()期望參數1是資源,布爾在第23行給出的C:\ wamp \ www \ espn.com \ login.php – ben 2010-10-31 23:24:33

+0

這意味着mysql_query返回false,可能是因爲語法錯誤或查詢中的模式對象名稱不正確 – Hammerite 2010-10-31 23:35:32

1

看起來像你有你的查詢看中的報價,所以它不是一個正確的琴絃

「與「

0

我想告訴你的數據庫連接創建一個單獨的文件/頁面。假設你的連接文件名是db_connection.php。如果你想只檢查db_connection.php頁面將包括。它可以節省您的作弄。

db_connection.php

<?php 

//Database Information 

$dbhost = "localhost"; 
$dbname = "users"; 
$dbuser = "root"; 
$dbpass = "*****"; 

//Connect to database 

mysql_connect ($dbhost, $dbuser, $dbpass)or die("Could not connect: ".mysql_error()); 
mysql_select_db($dbname) or die(mysql_error()); 

session_start(); 
?> 

現在,在您的登錄頁面,你包括db_connection.php

loginpage:

<?php 
include_once('db_connection.php'); 

if(isset($_POST['submit']) //submit is form button name 
{ 
    $username = $_POST[‘username’]; 
    $password = md5($_POST[‘password’]); 

    $query = mysql_query(「select * FROM users where 'username'=$username and 'password'= $password ") ; 

if (mysql_num_rows($result)>0) { 

    $_SESSION[‘username’] = 「$username」; 
    header(location:memberspage.php); 

} else { 

    $error = 「Bad Login」; 
    header(location:memberspage.php); 

} 
?>