Хорошо, я написал пользовательскую функцию PHP, чтобы вытащить значение из базы данных mysql, изначально эта функция была в классе, и я пытался назвать ее формой класса, она все время давала мне проблемы, поэтому я переместил его локально в файл для устранения неполадок, так как я не получал никаких ошибок, кроме 500, я не вижу ошибок в/var/log/httpd/error_log и если я прокомментирую переменную $ host, в которой я вызываю Функция getSetting скрипт просто говорит, что не удалось войти в систему, что ожидается, поскольку я не предоставляю никакой информации для метода входа ssh.Пользовательская функция php HTTP ERROR 500
<?php
//testing for php
//created by dylan kraklan do not use without permission
//setenforce 0 on host machine is required
//header('Content-type: text/plain');
error_reporting('E_ALL | E_STRICT');
ini_set('display_errors', 'On');
include('Net/SSH2.php');
include('general.php');
include('config.php');
$database =Database::getInstance();
$db = $database->getConnection();
$gen = new Gen();
function getSetting($setting) {
$set_sql = "SELECT value FROM settings WHERE setting='$setting'";
$set_query =$db->query($set_sql);
$value_a = $set_query->fetch_assoc();
$value =$value_a['value'];
return $value;
}
$host = getSetting('remote_host');
//$user = $gen->getSetting('remote_user');
//$pass = $gen->getSetting('remote_pass');
//echo $host.$user.$pass;
$ssh = new Net_SSH2($host);
if(!$ssh->login($user, $pass)) {
exit('Login Failed');
}
print_r($ssh->exec('pwd'));
print_r($ssh->exec('ls -la'));
?>
Я включил все протоколирование ошибок optiosn я видел в php.ini, и я даже указан для регистрации ошибок в php_error.log, я предположил, этот файл будет находиться в той же директории, как php.ini (/ и т.д.) не видел, чтобы он генерировал. Затем я попытался переключить его на /var/log/httpd/php_error.log, и я все еще не вижу его генерации.
EDIT: Хорошо, так что я нашел код, который покажет мне ошибку, PHP's white screen of death
Теперь ошибка является
E_NOTICE Error in file �test.php� at line 21: Undefined variable: db Fatal error: Call to a member function query() on a non-object in /var/www/html/sync/lib/test.php on line 21 E_ERROR Error in file �test.php� at line 21: Call to a member function query() on a non-object
линия 21 является
$set_query =$db->query($set_sql);
Я не уверен, что не так с моим оператором mysql, но это, кажется, вызывает проблемы.
Возможный дубликат [белый экран смерти PHP] (http://stackoverflow.com/questions/1475297/phps-white-screen-of-death) – Sherif