2016-07-25 127 views
0

我有我的數據庫託管在一個網站上。 我怎麼能修改此:如何連接到託管數據庫?

$con=mysqli_connect("localhost", "root", "", "amit"); 

,以連接到我的數據庫hoted的www.abc.com(例子)網站?

+0

你不應該使用'header'前輸出任何內容 - 而不是設置的登錄用戶的用戶名進入您檢查存在的帳戶頁面上,並呼應相應 – RamRaider

+3

dafuq發生有一個會話變量...不同的問題 – RamRaider

回答

0

爲了使用戶名顯示到下一頁,您需要將經過驗證的用戶用戶名存儲在會話中,因爲HTTP是無狀態協議。

因此,成功驗證用戶身份後,請使用用戶名設置會話變量。

if($authenticated) 
{ 
    $_SESSION['username'] = $sUserName; 
    //Then redirect the user to the account.php page 
    header('location:account.php') 
} 
else { 
//redirect to the login page. 
} 

一旦你設置你可以在任何地方使用的變量,但不要忘了使用,在session_start()在每一頁開始的會話的會話變量 然後你就可以訪問account.php的用戶名如下:

if(isset($_SESSION['username'])) 
{ 
    echo $_SESSION['username']; 
} 

此外,在回答你的第二個問題: 只是「localhost」替換爲您選擇的任何主機連接到遠程數據庫引擎。

乾杯!

+0

嗨!即使我使用這個 如果($ check_user> 0)$ _SESSION ['Fname'] = $ name; header('Location:account.php');} 我仍然得到一個錯誤,說Undefined index ??? –

+0

你忘了在account.php的開頭添加session_start()嗎? – pioneer

+0

不是,它在那裏 <?php session_start(); ?> –

0

將「localhost」更改爲託管數據庫的服務器的IP(以及憑據如果發生更改 - 我當然希望您在生產中有密碼!)。

0

如果要從另一臺計算機或服務器訪問數據庫,可能需要修改數據庫用戶的安全屬性。 有時只有本地主機的用戶才能連接到數據庫。

要連接到數據庫,您只需將「localhost」更改爲服務器ip。

0

如果您使用的是cPanel服務器,請從databse部分查看您的數據庫名稱,用戶名和密碼。然後相應地更改值。

0

MySQL連接

<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?> 

MySQL連接使用端口

<?php // we connect to example.com and port 3307 $link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); 

// we connect to localhost at port 3307 $link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?> 

的mysqli連接

<?php $link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db"); 

if (!$link) { echo "Error: Unable to connect to MySQL." . PHP_EOL; echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL; echo "Debugging error: " . mysqli_connect_error() . PHP_EOL; exit; } 

echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL; echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL; 

mysqli_close($link); ?> 

PDO連接

<?php try { $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass); foreach($dbh->query('SELECT * from FOO') as $row) { print_r($row); } $dbh = null; } catch (PDOException $e) { print "Error!: " . $e->getMessage() . "<br/>"; die(); } ?>