Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 11.12.2015
Сообщений: 11
1

Не удается отправить sql запрос в функции

19.11.2017, 01:06. Показов 728. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер, господа!

Имею следующий код, который должен извлечь данные с БД.


PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
    require_once 'mainVariables.php';
    
    
    
    //function z1(){
        
    $enteredLogin = 'admin';
    
    $mysqli = new mysqli($host, $dbUser, $dbPassword, $database);
    if ($mysqli->connect_errno) {
        echo "Не удалось подключиться к MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
    };
    $enteredLogin = 'admin';
    $request = $mysqli->query("SELECT PASSWORD, ID AS USERID FROM USERS WHERE LOGIN = '$enteredLogin' ");
 
if (!$request){throw new Exception ('Cannot send request');}
 
    while ($result = $request->fetch_assoc()) {
        echo $result['PASSWORD'];
    
    }
    //}
    //z1();
?>
Все прекрасно работает. Но стоит заключить этот код в функцию и вызвать ее (убрать комментирование), так возникает эксепшен. При этом, если в sql запросе в условии поставить
PHP
1
WHERE LOGIN = 'admin'
(то есть сразу значение переменной), то все тоже работает. Интересно знать, почему так происходит и что с этим делать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.11.2017, 01:06
Ответы с готовыми решениями:

Отправить запрос в ms sql
Добрый день. Обрабатывается вот такой код $phone = '\'' . '+7' . $_POST . '\''; $pass = '\''...

Не удается отправить запрос
$dbc = mysql_connect ('localhost', 'piley', '123', 'mydb') or die('Не подключилось к базе'); ...

Не удается отправить post запрос
Не могу отправить post запрос Мой код private void button1_Click(object sender, EventArgs e) ...

Не удается отправить POST запрос
Здравствуйте. Ситуация. Есть некое отношение между классами: class ConnectManager : public...

5
Эксперт PHP
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
19.11.2017, 01:12 2
$enteredLogin точно объявляется внутри функции?
0
0 / 0 / 0
Регистрация: 11.12.2015
Сообщений: 11
19.11.2017, 01:46  [ТС] 3
Да.
0
Эксперт PHP
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
19.11.2017, 11:44 4
Цитата Сообщение от Хеллоуворлдщик Посмотреть сообщение
возникает эксепшен
Что пишет?
0
0 / 0 / 0
Регистрация: 11.12.2015
Сообщений: 11
19.11.2017, 15:01  [ТС] 5
спасибо, разобрался. Оказывается переменные для коннекта к ДБ $host, $dbUser, $dbPassword, $database были не видимые в функции (они были обьявлены в файле mainVariables.php). Если их обьявить внутри функции, то все ок. Это что, получается для коннекта к БД в каждой функции обьявлять эти переменные, или можно это как нибудь обойти?
0
Эксперт PHP
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
19.11.2017, 15:14 6
Цитата Сообщение от Хеллоуворлдщик Посмотреть сообщение
или можно это как нибудь обойти?
Если знакомы с ООП, то Singleton. Если нет, константы.
0
19.11.2017, 15:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.11.2017, 15:14
Помогаю со студенческими работами здесь

Как установить соединение с MS SQL и отправить запрос?
Добрый день! Подскажите пожалуйста как переписать код на VC++ для соединения и отправки запроса на...

Не удается отправить запрос. Через браузер все ок, а через PHP не совсем
Привет! Пытаюсь отправить запрос, но что то не получается.. Вот исходник $token =...

При выполнении JavaScript-функции отправить запрос на сервер
Суть в том, что по кнопке в форме вызывается JavaScript-функция, которая выполняет некоторые...

Ну удается отправить е-мейл
Везде целая документация как отправить мэйл с промощю mail через консолье шелл mail...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru