2016-07-25 133 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(); } ?>