Функция и MySQL

  • Автор темы Автор темы Mr_Max
  • Дата начала Дата начала

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Функция и MySQL

Здраствуйте
можно ли через функцию вызывать селект из базы мускула?
бъюсь уже второй день...
терзают сомнения что нельзя
если можно объясните плз на примере
ещё где можно прочитать про функции на нормальном доступном (рус.) языке?
Спасибо
 
Mr_Max через функцию это ты имеешь ввиду - сделать запрос к базе из функции?
Конечно можно.
Где можно почитать - настоятельно рекомендую читать на английском - пусть со словарем, но на английском. www.php.net
 
Дла начала научись по-русски писать, и объяснить, что тебе надо.
пока ответом на твой вопрос является такой код
function select() {mysql_query("SELECT * FROM table");}
 
а еще большой совет: научись по английски читать. Очень помоежет.
 
да именно это я имел ввиду
делаю так (скорее всего НЕ ТАК)

function connect ($db){//конект к базе
$db=mysql_connect("localhost", "root", "") or die("");
mysql_select_db("mainhost", $db);
}

function select ($data) {// функция селекта
$data = mysql_fetch_array(mysql_query("SELECT * FROM forum WHERE msg_id=0"));
}

Пробую так

connect ($db);
while (select ($data)){
echo $data[zag];}

браузер вешается. Скорее всего я что-то провтыкал.....

если так,
connect ($db);
select ($data);
echo $data[zag];
то в браузер ничего не выводится...

Объясните плз почему?
Завязать всё через функцию пробую впервые.
Грят так проще и удобнее.
Но у меня получается сложно и неудобно :(
 
Mr_Max почитай серьезно что из себя представляют функции.
про передачу параметров и возврат значений, про области видимости переменных. Причем не обязательно в php.

hints
что делает у тебя функция select?
что содержится в передаваемых ей параметрах (параметре $data)
Как она сообщает о результатах своей работы?
 
Когда ты вызываешь функцию, оргументы копируются в новые переменные, и затем эти новые переменные используются в функции. Если ты хочешь возврашать результат, то еспользуй ссылки или возвращай через return.
 
если я думал хоть что-то в функциях понимаю, то сейчас я окончательно запутался....
 
Автор оригинала: Mr_Max
да именно это я имел ввиду
делаю так (скорее всего НЕ ТАК)

function connect ($db){//конект к базе
$db=mysql_connect("localhost", "root", "") or die("");
mysql_select_db("mainhost", $db);
}
Чет тут не то. $db не надо передавать в процедуру, он определяется в процессе выполнения connect.
function select ($data) {// функция селекта
$data = mysql_fetch_array(mysql_query("SELECT * FROM forum WHERE msg_id=0"));
}
По моему, гдето тут return потерялся :). И на счет вложения query в fetch_array не уверен...
 
Mr_Max ты просто спешишь думая что можно все понять на примерах не имея никакой теоретической базы.
Ну тогда хоть начни с простых примеров - напиши функцию, которая - да что угодно - увеличивает значение в 10 раз, извлекает корень и т.д. (для извлечения корня пользуйся стандартной функцией) - сейчас не в этом суть.
 
>И на счет вложения query в fetch_array не уверен...
не уверен , не обгоняй!
Mr_Max, знания надо собирать систематически, а не хватать по куску из разных источников. Если ты не понимаешь принципов общего программирования, то не стоит сразу браться за базы данных и прочее.
 
Max, тебе необходимо в мануале почитать как function работает
 
fog, мануал в данном случае может дать только синтаксис, общего понимания он не даст.
 
Max,
Поставь
PHP:
print_r($data);
flush();
в цикле и узнаешь почему браузер виснет. ;)
 
>Завязать всё через функцию пробую впервые.
>Грят так проще и удобнее.
Юзай классы
ИМХО лучше и проще :)

ЗЫ но функции тоже учи
 
>Frol
ага, а потом человек не знающий что такое функция, будет говорить, что он знает ООП.
 
Сверху