2017-06-12 18 views
0

GoDaddyがホストしているLinux Webサーバーに複数のMS Accessデータベースを置いています。私のログインポータルからログインしようとすると、エラーが表示されます:致命的なエラー:クラス 'COM'が/home/buerer/public_html/flames/events/checklogin.phpの11行目に見つかりません致命的なエラー:クラス 'COM'がPHP 5.6に見つかりません

ここにありますchecklogin.phpファイルのコード:私は私のGoDaddyのファイルマネージャでphp.iniファイルを見つけることができません

<?php 
session_start(); 
ini_set('display_errors', 1); error_reporting(E_ALL); 
global $rs; 
// parse username and password sent from signup form post to php variables 
$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword']; 
$access = realpath("db/users.mdb"); 
$_SESSION['accessLevel'] = "READ DATA FROM TABLE"; 
//create connection as COM object 
$conn = new COM('ADODB.Connection') or exit('Cannot start ADO.'); 
//create recordset as new COM object 
$rs = new COM('ADODB.Recordset') or exit('Cannot create recordset.'); 
//dim connection with driver and password 
    $conn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=$access;Jet OLEDB:Database Password='softball1234';"); 
//$conn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=$access;Jet OLEDB:Database Password=$mypassword;"); 
$sql = "SELECT * FROM tblUsers WHERE VendorCode='$myusername' and Password='$mypassword'"; 
//execute sql in connection to database to store are recordset 
$rs = $conn->Execute($sql); 


if ($rs->EOF) { 
     echo "Wrong Username or Password"; 
     print "<br>Click <a href=main_login.php>here</a> to try again."; 

    //print $rs->ErrorMsg(); // Displays the error message if no results could be returned 
}else{ 
     $_SESSION['AccessLevel'] = $rs->fields["AccessLevel"]->value; 
     $_SESSION['MailingListID'] = $rs->fields["MailingListID"]->value; 
     $count = 0; 
    while (!$rs->EOF) { 
     $count++; 
     $rs->MoveNext(); 
    } //while !$rs->eof 

    if($count>0){ 
     // Register $myusername, $mypassword and AccessLevel and redirect to file "selection.php" 
     $_SESSION['username'] = $myusername; 
     $_SESSION['password'] = $mypassword; 


     //$_SESSION['AccessLevel'] = $rs->fields["AccessLevel"]->value; 

     header("location:selection.php"); 
    }else { 

     echo "Wrong Username or Password"; 
     print "<br>Click <a href=main_login.php>here</a> to try again."; 
     session_destroy(); 
     } 
} 
?> 

、誰もがこの問題を解決する方法を知っていますか?

+3

クラスCOMはWindows専用拡張です。あなたはnixサーバーで何を期待していますか? –

+0

はい、できます@ webDev – Bowen

+0

php.iniファイルにアクセスするには、このリンクをチェックしてください。https://stackoverflow.com/questions/16140917/how-to-access-the-php-ini-file-in-godaddy-shared-hosting -linux –

答えて

0

はPHP 5.4.5からは、COMおよびDOTNETは、もはやphp.iniでCOMサポートを追加する必要がcore.you PHPに組み込まれていない:

[COM_DOT_NET] 拡張子= php_com_dotnet.dll そうでない場合は必要になりますエラーログでこれを参照してください。致命的なエラー:クラス 'COM'が見つかりません。

+1

OPタグ 'linux'を追加したので、彼のOSだと思うので、' COM'拡張はnixシステムでは利用できません。 –

+0

Linuxウェブサーバでphp.iniファイルにどこからアクセスできるのか分かりますか? phpinfo.iniのパスは存在しません。 – Bowen

+0

'/ etc/php.ini'のほとんどの場合 – webDev

関連する問題