Я знаю, что это не очень хорошая практика для запросов в контроллере, но по какой-то причине они не работают в этом классе контроллера. Я не слишком разбираюсь в кодедигнере, поэтому любая помощь приветствуется, поскольку я понятия не имею, как еще это настроить для правильной работы. У меня есть сценарий ajax, который получает информацию.codeigniter mysql-запросы не работают
Вот мой код:
<?php
class Phonecall extends CI_Controller {
public function index() {
/*$con = mysqli_connect('localhost','root','root','MYDB');
if (!$con) {
die ('Could not connect: ' . mysqli_error($con));
}*/
//$operatorId = $_SESSION['Oper']['OperatorID']; //I also cannot figure out how to get $_SESSION information either
//$sql = "SELECT phone_number FROM incoming_calls WHERE OperatorID='${operatorId}'";
//$result = mysqli_query($con,$sql);
$query = $this->db->query("SELECT phone_number FROM MYDB.incoming_calls");// WHERE OperatorID='${operatorId}'");
while ($row = $query->row_array()) {
$number = $row['phone_number'];
}
/*$sql = "SELECT Username, UserID, Name
FROM tblUsers
WHERE PhoneHome='999-999-9999' OR PhoneCell='999-999-9999' OR PhoneWork='999-999-9999'";
*/
$query = $this->db->query("SELECT Username, UserID, Name
FROM MYDB.tblUsers
WHERE PhoneHome='999-999-9999' OR PhoneCell='999-999-9999' OR PhoneWork='999-999-9999'");
while ($row = $query->row_array()) {
$userArray[] = array("name" => $row['Name'], "username" => $row['Username'], "user_id" => $row['UserID']);
}
if (!empty($userArray)) {
echo json_encode($userArray);
}
if (isset($_POST["drop"])) {
$query = $this->db->query("DELETE FROM MYDB.incoming_calls
WHERE phone_number = $number
LIMIT 1");
if (!$result) {
die ('Could not drop row: ');
}
}
$this->db->close();
}
}
?>
Вот мои JS:
var user = new Array();
var user_id = new Array();
var name = new Array();
$.get(baseURL + 'phonecall/index', function(data) {//where baseURL is defined
var loginInfo = jQuery.parseJSON(data);
for (var i = 0; i < loginInfo.length; ++i) {
name[i] = loginInfo[i].name;
user[i] = loginInfo[i].username;
user_id[i] = loginInfo[i].user_id;
}
}
Я не знаю много о рамках, и я пытаюсь узнать, я не знаю, как сделайте этот файл доступ к данным $ _SESSION. Любая помощь приветствуется.
Эти запросы возвращают данные, когда они запущены. – Juan
Что не работает точно? вы получаете сообщение об ошибке? Что касается данных сеанса, я советую вам прочитать руководство: https://ellislab.com/codeigniter/user-guide/libraries/sessions.html – Patrick
Ошибка, которую я получаю, - это ошибка сервера 500 в консоли когда скрипт ajax пытается запустить. Если я запустил это на своей локальной машине и немного изменил код для запросов mysqli, все будет работать отлично. Это не дает мне никакой другой информации, кроме ошибки сервера 500. – Juan