|
|
|
| Вот если просто так написать то ошибки не выдает, а показывает то что надо.
echo mysql_result((mysql_query("select name from aft where iduser=$id")),$i);
|
Но если это поставить внутрь функции таким образом.
function result($i){
echo mysql_result((mysql_query("select name from aft where iduser=$id")),$i);
}
result(0);
|
То mysql выдает сразу две ошибки(( Подскажите плиз, в чем проблема. А то я уже ничего не понимаю. | |
|
|
|
|
|
|
|
для: Зосим
(03.03.2008 в 16:20)
| | а как ошибки выглядят? | |
|
|
|
|
|
|
|
для: KirillKiev
(03.03.2008 в 16:26)
| | Warning: mysql_query() [http://www.mysql.com/doc]: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 in D:\web\item.php on line 4
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in D:\web\item.php on line 4
Вот так. | |
|
|
|
|
|
|
|
для: Зосим
(03.03.2008 в 16:20)
| | В функции result($i) переменная $id не определена | |
|
|
|
|
|
|
|
для: olejek
(03.03.2008 в 16:47)
| | Дык она выше по тексту определена, я не стал все вывешивать, а то там много получается.
Я же говорю, пока в функцию, то не помещу это, результат нормально выдает. | |
|
|
|
|
|
|
|
для: Зосим
(03.03.2008 в 17:07)
| | у вас в функции иметься в виду не определена переменная $id
function result($i){
echo mysql_result((mysql_query("select name from aft where iduser=$id")),$i);
|
мождет нужно как то так
function result( $i, $id ){
echo mysql_result((mysql_query("select name from aft where iduser=$id")),$i);
|
| |
|
|
|
|
|
|
|
для: KirillKiev
(03.03.2008 в 17:14)
| | Точно, так работает. Спасибо большое. Только я не понял, все используемые переменные в функции, надо обязательно,или внутри функции объявлять или как аргумент использовать??
Ну то есть, переменные объявленные вне функции, внутри функции не видны??
Надеюсь понятно спросил)) Извините за нубские вопросы, я всего вторую неделю как это дело изучаю. | |
|
|
|
|
|
|
|
для: Зосим
(03.03.2008 в 17:07)
| | >Дык она выше по тексту определена
Выше - это где: за пределами функции или в теле функции? | |
|
|
|
|
|
|
|
для: olejek
(03.03.2008 в 17:19)
| | Ага, за пределами функции. Её не видно да?? | |
|
|
|
|
|
|
|
для: Зосим
(03.03.2008 в 17:28)
| | Не видно... да... :)
можно еще в начале функции сделать
global id;
например тогда глобальная переменная $id которая определена не в функции будет видна внутри функции
типа
function result($i){
global $id;
echo mysql_result((mysql_query("select name from aft where iduser=$id")),$i);
}
|
| |
|
|
|
|
|
|
|
для: Зосим
(03.03.2008 в 17:28)
| | Почитайте это http://rus-phpnuke.com/php/variables.scope.html.
Там все подробно описано.
Я тоже, когда начинал программировать на php, тратил кучу времени на поиск подобных ошибок. Ведь в Pascal и С глобальные переменные видны в теле функции. Так что как-то дико было привыкать к такой видимости переменных. Зато это имеет свои преимущества. | |
|
|
|
|
|
|
|
для: olejek
(03.03.2008 в 17:42)
| | Вот, вот, я от этого и был уверен,что функция переменную $id видит нормально. Думаю с mysql какая-то фигня, тем более что ни в англицком, ни в mysql не бум-бум)))Спасибо большое, что уделили внимание моей проблеме. | |
|
|
|