mysqli_connect问题

Rec*_*şek 0 php mysqli

这是我的登录脚本;

<?php
$username = $_POST['username']; //kullanici adi
$password = $_POST['password']; //parola
$msg ='';
if(isset($username, $password)) {
    ob_start();
    include('ayar.php');
    // güvenlik amaçli sql injection önlemek için sinirlama koy
    $dbC = mysqli_connect($vthost, $vtkullanici, $vtsifre, $vtadi)
    or die('Veritabanina baglanilamadi');
    $myusername = stripslashes($username);
    $mypassword = stripslashes($password);
    $myusername = mysqli_real_escape_string($dbC, $myusername);
    $mypassword = mysqli_real_escape_string($dbC, $mypassword);
    $sql="SELECT * FROM login_admin WHERE user_name='$myusername' and user_pass=SHA('$mypassword')";//SHA çöz
    $result=mysqli_query($dbC, $sql);
    // kayit kontrol et
    $count=mysqli_num_rows($result);
    // kayit eslemesi kontrol et
    if($count==1){
        // esmeleme varsa oturum aç ve yönlendir 
        session_register("admin");
        session_register("password");
        $_SESSION['name']= $myusername;
        header("location:raporla.php");
    }
    else {
        $msg = "Yanlis kullanici adi yada parola";
        header("location:index.php?msg=$msg");
    }
    ob_end_flush();
}
else {
    header("location:index.php?msg=Kullanici adi yada parola girmediniz");
}
?>
Run Code Online (Sandbox Code Playgroud)

ayar.php我有主机,用户名等.那里没有问题.但问题是它在本地和任何其他主机上都很好用,但在这个主机上却没有.这是服务器错误日志所说的内容.

[11-Jun-2011 02:01:26] PHP Fatal error:  Call to undefined function  mysqli_connect() in /home/bankalar/public_html/rapor/giris.php on line 9
Run Code Online (Sandbox Code Playgroud)

mysqli_connect().我在php conf上搜索了这个模块.但是没有这样的.任何的想法?

Dam*_*rsy 5

在你的php.ini (这在Windows下)你应该有以下几行:

...
;extension=php_ming.dll
;extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
...
Run Code Online (Sandbox Code Playgroud)

一定要把mysqli注释掉(删除;之前)

编辑:正如@datasage所指出的,如果你运行的Linux发行版行将有不同的命名,如:

;   extension=msql.so
;
; ... or with a path:
;
;   extension=/path/to/extension/msql.so
Run Code Online (Sandbox Code Playgroud)

如果您在共享主机上并且无法访问php.ini,我建议您删除它们并要求启用它.

如果您有私人服务器,并且没有安装mysqli扩展,请按照此处的php手册说明获取有关如何安装它的指南.

否则,你可能想要使用PDO类(自php 5.1起就在dafault安装中),它甚至比mysqli具有很大的优势,它对于使数据库更安全非常有用.