Как вызвыть функцию в PHP нажатием на ссылку?
От: РусланМаксимов Россия www.pansion.h10.ru
Дата: 30.09.03 18:33
Оценка:
Как вызвыть функцию в PHP нажатием на ссылку?
Re: Как вызвыть функцию в PHP нажатием на ссылку?
От: Ned1 Молдова  
Дата: 30.09.03 19:48
Оценка: :)
Здравствуйте, РусланМаксимов, Вы писали:

РМ> Как вызвыть функцию в PHP нажатием на ссылку?


Нормально у тебя это не получится. Можешь попробовать через JavaScript (обрабатывая соответсвующий event), но у меня возникала всегда при этом одна проблема: РНР не признает JavaScript-функции и свой код, содержащийся в них будет исполнять незамедлительно. Единственный премлемый способ: вынести функцию в отдельный скрипт (например, в тот, куда ты переходишь по ссылке) и работать с ней уже там.
Re[2]: Как вызвыть функцию в PHP нажатием на ссылку?
От: DSD Россия http://911.ru/cv
Дата: 30.09.03 23:02
Оценка: 26 (1) +1 :)
Здравствуйте, Ned1, Вы писали:

N>Здравствуйте, РусланМаксимов, Вы писали:


РМ>> Как вызвыть функцию в PHP нажатием на ссылку?


N>Нормально у тебя это не получится. Можешь попробовать через JavaScript (обрабатывая соответсвующий event), но у меня возникала всегда при этом одна проблема: РНР не признает JavaScript-функции и свой код, содержащийся в них будет исполнять незамедлительно. Единственный премлемый способ: вынести функцию в отдельный скрипт (например, в тот, куда ты переходишь по ссылке) и работать с ней уже там.



О! Они нашли друг друга! Можно сразу в хумор


Ребята (оба: РусланМаксимов и Ned1), вся фишка в том, что PHP выполняется на сервере, а JavaScript — на клиенте.


То бишь схема такова:
Браузер запрашивает некий PHP-скрипт на сервере. Сервер выполняет этот скрипт(у себя), и отдает браузеру результат выполнения этого скрипта(обычно этот результат — не что иное, как сгенерированная PHP-скриптом web-страничка). А JavaScipt работает на клиенте, внутри web-браузера — то бишь на самой страничке, после(и во время) загрузки этой странички в браузер.

Возвращаясь к первому вопросу — выполнить PHP-функцию, нажав на ссылку.

Прямиком на клиенте это сделать практически невозможно.
Обычно все делают так:
Для этого надо сделать ссылку вида httр://myhоst.com/blablabla/blabla.php?function=myfunc
где после знака ? мы передаем этому скрипту параметр function со значением myfunc.

Соответственно на сервере в нужном месте должен лежать скрипт blabla.php, в котором мы принимаем параметр function и в зависимости от его значения, выполняем ту или иную PHP-функцию.

Еще раз повторю — эта функция выполнится на сервере, и обычно такое выполнение подразумевает запрос и загрузку странички с сервера(т.е. как обычный переход по ссылке на другую страничку).

To All: Если чего не поймут, обьясните им кто-нибудь подоходчивей, а то у меня от веселья чейто дар речи пропал и обьяснялка не работает

--
DSD
Re[3]: Как вызвыть функцию в PHP нажатием на ссылку?
От: Ned1 Молдова  
Дата: 01.10.03 09:21
Оценка:
Здравствуйте, DSD, Вы писали:

DSD>

О! Они нашли друг друга! Можно сразу в хумор


DSD>Ребята (оба: РусланМаксимов и Ned1), вся фишка в том, что PHP выполняется на сервере, а JavaScript — на клиенте.



DSD>То бишь схема такова:

DSD>Браузер запрашивает некий PHP-скрипт на сервере. Сервер выполняет этот скрипт(у себя), и отдает браузеру результат выполнения этого скрипта(обычно этот результат — не что иное, как сгенерированная PHP-скриптом web-страничка). А JavaScipt работает на клиенте, внутри web-браузера — то бишь на самой страничке, после(и во время) загрузки этой странички в браузер.

DSD>Возвращаясь к первому вопросу — выполнить PHP-функцию, нажав на ссылку.


DSD>Прямиком на клиенте это сделать практически невозможно.

DSD>Обычно все делают так:
DSD>Для этого надо сделать ссылку вида httр://myhоst.com/blablabla/blabla.php?function=myfunc
DSD>где после знака ? мы передаем этому скрипту параметр function со значением myfunc.

DSD>Соответственно на сервере в нужном месте должен лежать скрипт blabla.php, в котором мы принимаем параметр function и в зависимости от его значения, выполняем ту или иную PHP-функцию.


DSD>Еще раз повторю — эта функция выполнится на сервере, и обычно такое выполнение подразумевает запрос и загрузку странички с сервера(т.е. как обычный переход по ссылке на другую страничку).


DSD>

To All: Если чего не поймут, обьясните им кто-нибудь подоходчивей, а то у меня от веселья чейто дар речи пропал и обьяснялка не работает


И тебе всего хорошего, человек, у которого не работает объяснялка .
Ты, тем не менее, очень здорово объясняешь букварные истины. В частности, что РНР — server-side script, а JavaScript — client-side.
Кстати, я сказал, что ч/з JavaScript не получится.
А еще ты почти слово в слово повторил то, что посоветовал я:
N>Единственный премлемый способ: вынести функцию в отдельный скрипт (например, в тот, куда ты переходишь по ссылке) и работать с ней уже там.
Re[4]: Как вызвыть функцию в PHP нажатием на ссылку?
От: РусланМаксимов Россия www.pansion.h10.ru
Дата: 01.10.03 13:39
Оценка:
N>Здравствуйте, DSD, Вы писали:

DSD>>

О! Они нашли друг друга! Можно сразу в хумор


DSD>>Ребята (оба: РусланМаксимов и Ned1), вся фишка в том, что PHP выполняется на сервере, а JavaScript — на клиенте.


О различиях ЯваСкрипт и ПХП я знаю, и можно не напоминать об этом.

Мой вопрос состоит вот в чем:

Допустим, есть страничка, выдающая список определенных фамилий. После списка
стоят две-три ссылки, каждая из которых сортирует этот список (по алфавиту, и т.д. — это неважно),
Каждый вид сотрировки имеет свою функцию, и все функции находятся в одном скрипте.
Вот я и хотел узнать, как же это осуществить, только пожалуйста, не нужно говорить о различиях JavaScript и PHP. Просто подскажите начинающим PHP-лаймерам

Спасибо!
Re[5]: Как вызвыть функцию в PHP нажатием на ссылку?
От: darkwolf Россия  
Дата: 01.10.03 13:51
Оценка:
Здравствуйте, РусланМаксимов, Вы писали:



N>>Здравствуйте, DSD, Вы писали:


DSD>>>

О! Они нашли друг друга! Можно сразу в хумор


DSD>>>Ребята (оба: РусланМаксимов и Ned1), вся фишка в том, что PHP выполняется на сервере, а JavaScript — на клиенте.


РМ>О различиях ЯваСкрипт и ПХП я знаю, и можно не напоминать об этом.


РМ>Мой вопрос состоит вот в чем:


РМ>Допустим, есть страничка, выдающая список определенных фамилий. После списка

РМ>стоят две-три ссылки, каждая из которых сортирует этот список (по алфавиту, и т.д. — это неважно),
РМ>Каждый вид сотрировки имеет свою функцию, и все функции находятся в одном скрипте.
РМ>Вот я и хотел узнать, как же это осуществить, только пожалуйста, не нужно говорить о различиях JavaScript и PHP. Просто подскажите начинающим PHP-лаймерам

Передай GET'ом или POST'ом переменную для сортировки и ветвись наздоровье, взависимости от значения переменной...
... << RSDN@Home 1.1 beta 2 >>
Re[5]: Как вызвыть функцию в PHP нажатием на ссылку?
От: DSD Россия http://911.ru/cv
Дата: 01.10.03 20:22
Оценка:
Здравствуйте, РусланМаксимов, Вы писали:



РМ>Допустим, есть страничка, выдающая список определенных фамилий. После списка

РМ>стоят две-три ссылки, каждая из которых сортирует этот список (по алфавиту, и т.д. — это неважно),
РМ>Каждый вид сотрировки имеет свою функцию, и все функции находятся в одном скрипте.
РМ>Вот я и хотел узнать, как же это осуществить, только пожалуйста, не нужно говорить о различиях JavaScript и PHP. Просто подскажите начинающим PHP-лаймерам

Скрипт(для сортировки кликать по заголовкам колонок таблицы): http://911.ru/to_rsdn/sort_exam.php
Исходник: http://911.ru/to_rsdn/sort_exam.php.html
--
DSD
Re[6]: Как вызвыть функцию в PHP нажатием на ссылку?
От: РусланМаксимов Россия www.pansion.h10.ru
Дата: 02.10.03 08:05
Оценка:
Здравствуйте, DSD, Вы писали:

DSD>Скрипт(для сортировки кликать по заголовкам колонок таблицы): http://911.ru/to_rsdn/sort_exam.php

DSD>Исходник: http://911.ru/to_rsdn/sort_exam.php.html

Спасибо, конечно, за исходник. Но у меня теперь другая проблема. Табличные данные берутся из текстового файла,
где, допустим, фамилия, имя и отчество отделены Tab'ом. Как вставить в таблицу эти данные, вместо тех, которые уже в ней находятся?
Спасибо, Андрей!!!
Re[7]: Как вызвыть функцию в PHP нажатием на ссылку?
От: darkwolf Россия  
Дата: 02.10.03 08:38
Оценка:
Здравствуйте, РусланМаксимов, Вы писали:

РМ>Здравствуйте, DSD, Вы писали:


DSD>>Скрипт(для сортировки кликать по заголовкам колонок таблицы): http://911.ru/to_rsdn/sort_exam.php

DSD>>Исходник: http://911.ru/to_rsdn/sort_exam.php.html

РМ>Спасибо, конечно, за исходник. Но у меня теперь другая проблема. Табличные данные берутся из текстового файла,

РМ>где, допустим, фамилия, имя и отчество отделены Tab'ом. Как вставить в таблицу эти данные, вместо тех, которые уже в ней находятся?
РМ>Спасибо, Андрей!!!

for example:
<?
$filename = "/usr/local/something.txt";
$handle = fopen ($filename, "r");
$contents = fread ($handle, filesize ($filename));
fclose ($handle);

$c_array = split("\n", $contents);
for ($i = 0; $i < count($c_array); $i++)
{
$ct_array[] = split("\t", $c_array[$i]);
}
?>
В итоге ты имеешь $ct_array со своими данными, которые потом в всталяешь в таблицу.
... << RSDN@Home 1.1 beta 2 >>
Re[7]: Как вызвыть функцию в PHP нажатием на ссылку?
От: DSD Россия http://911.ru/cv
Дата: 02.10.03 10:10
Оценка: 6 (1)
Здравствуйте, РусланМаксимов, Вы писали:

РМ>Спасибо, конечно, за исходник. Но у меня теперь другая проблема. Табличные данные берутся из текстового файла,

РМ>где, допустим, фамилия, имя и отчество отделены Tab'ом. Как вставить в таблицу эти данные, вместо тех, которые уже в ней находятся?


Пример обновился
Пример: http://911.ru/to_rsdn/sort_exam.php
Исходник: http://911.ru/to_rsdn/sort_exam.php.html
Текстовик с данными: http://911.ru/to_rsdn/sort_data.txt
--
DSD
Re[8]: Как вызвыть функцию в PHP нажатием на ссылку?
От: РусланМаксимов Россия www.pansion.h10.ru
Дата: 02.10.03 17:13
Оценка:
Здравствуйте, DSD, Вы писали:

DSD>Пример обновился

DSD>Пример: http://911.ru/to_rsdn/sort_exam.php
DSD>Исходник: http://911.ru/to_rsdn/sort_exam.php.html
DSD>Текстовик с данными: http://911.ru/to_rsdn/sort_data.txt

DSD, огромное спасибо за помощь! Скрипт работает отлично! Но только со строками, а числа сортирует некорректно:
0
160
1600
1600
1600
1600
1600
1600
1600
200
200
200
200
200
201
201
2035
2035
2099
2099
2099
2654
56
5600
5643
97
Re[9]: Как вызвыть функцию в PHP нажатием на ссылку?
От: DSD Россия http://911.ru/cv
Дата: 02.10.03 21:13
Оценка:
Здравствуйте, РусланМаксимов, Вы писали:

РМ>DSD, огромное спасибо за помощь! Скрипт работает отлично! Но только со строками, а числа сортирует некорректно


Все дело в функции SortByX:
function SortByX($a, $b) {
   global $sort_type;
   return strcasecmp($a[$sort_type], $b[$sort_type]);
}

в ней для непосредственно сравнения сортируемых элементов используется функция strcasecmp.
поэтому числа перед сравнением переводятся в строки и сортируются в итоге по правилам сортировки строк.

Поэтому для сортировки числовых данных ее нужно просто соответственно переписать:
function SortByX($a, $b) {
   global $sort_type;
   if ($a[$sort_type]>$b[$sort_type]) return 1;
   if ($a[$sort_type]<$b[$sort_type]) return -1;
   return 0;
}


можно и покороче:
function SortByX($a, $b) {
   global $sort_type;
   return ($a[$sort_type]>$b[$sort_type])?1:($a[$sort_type]<$b[$sort_type])?-1:0;
}
--
DSD
Re[10]: Как вызвыть функцию в PHP нажатием на ссылку?
От: РусланМаксимов Россия www.pansion.h10.ru
Дата: 03.10.03 14:18
Оценка:
Здравствуйте, DSD, Вы писали:


DSD>Все дело в функции SortByX:


Спасибо DSD за помощь!!
Теперь можно вопрос не по теме?
Зачем ты помогаешь таким как я, начинающим?
Ты хорошо объясняешь, за это тебе громадное спасибо!
Не подумывал написать книгу о программировании на PHP?

--
С уважением,
Руслан
Re[11]: Как вызвыть функцию в PHP нажатием на ссылку?
От: ЖуК Украина http://smart-ip.net/
Дата: 03.10.03 14:27
Оценка:
Здравствуйте, РусланМаксимов, Вы писали:

РМ>Здравствуйте, DSD, Вы писали:



DSD>>Все дело в функции SortByX:


РМ>Спасибо DSD за помощь!!

РМ>Теперь можно вопрос не по теме?
РМ>Зачем ты помогаешь таким как я, начинающим?
РМ>Ты хорошо объясняешь, за это тебе громадное спасибо!
РМ>Не подумывал написать книгу о программировании на PHP?

РМ>--

РМ>С уважением,
РМ>Руслан

Не... DSD PHP не любит...
_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[12]: Как вызвыть функцию в PHP нажатием на ссылку?
От: uzzy Россия  
Дата: 03.10.03 15:01
Оценка:
Здравствуйте, ЖуК, Вы писали:

ЖуК> Не... DSD PHP не любит...

я бы сказал ненавидит

P.S.
To Жук: Помнится ты как-то на своем сайте пример заимствованного календаря выкладывал, потом благополучно убрал. Не можешь случаем мне на ящик кинуть?
RSDN@Home 1.1 beta 2
Re[13]: Как вызвыть функцию в PHP нажатием на ссылку?
От: ЖуК Украина http://smart-ip.net/
Дата: 03.10.03 15:07
Оценка:
Здравствуйте, uzzy, Вы писали:

U>Здравствуйте, ЖуК, Вы писали:


ЖуК>> Не... DSD PHP не любит...

U>я бы сказал ненавидит

U>P.S.

U>To Жук: Помнится ты как-то на своем сайте пример заимствованного календаря выкладывал, потом благополучно убрал. Не можешь случаем мне на ящик кинуть?

А сорри, я его просто переместил иль че-то там еще сделал... вообщем вот он
http://scripts.kiev.ua/examp/calendar/
_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[14]: Как вызвыть функцию в PHP нажатием на ссылку?
От: ЖуК Украина http://smart-ip.net/
Дата: 03.10.03 15:09
Оценка: 1 (1)
Здравствуйте, ЖуК, Вы писали:

ЖуК>Здравствуйте, uzzy, Вы писали:


U>>Здравствуйте, ЖуК, Вы писали:


ЖуК>>> Не... DSD PHP не любит...

U>>я бы сказал ненавидит

U>>P.S.

U>>To Жук: Помнится ты как-то на своем сайте пример заимствованного календаря выкладывал, потом благополучно убрал. Не можешь случаем мне на ящик кинуть?

ЖуК>А сорри, я его просто переместил иль че-то там еще сделал... вообщем вот он

ЖуК>http://scripts.kiev.ua/examp/calendar/
http://scripts.kiev.ua/src/calendar/calendar.js — сырец
_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[15]: Как вызвыть функцию в PHP нажатием на ссылку?
От: uzzy Россия  
Дата: 03.10.03 15:17
Оценка:
Здравствуйте, ЖуК, Вы писали:

ЖуК>>А сорри, я его просто переместил иль че-то там еще сделал... вообщем вот он

ЖуК>>http://scripts.kiev.ua/examp/calendar/
ЖуК>http://scripts.kiev.ua/src/calendar/calendar.js — сырец

и первая и вторая ссылка — дохлые, по крайней мере для меня
RSDN@Home 1.1 beta 2
Re[16]: Как вызвыть функцию в PHP нажатием на ссылку?
От: uzzy Россия  
Дата: 03.10.03 15:20
Оценка:
Здравствуйте, uzzy, Вы писали:

U>Здравствуйте, ЖуК, Вы писали:


ЖуК>>>А сорри, я его просто переместил иль че-то там еще сделал... вообщем вот он

ЖуК>>>http://scripts.kiev.ua/examp/calendar/
ЖуК>>http://scripts.kiev.ua/src/calendar/calendar.js — сырец

все не надо ... разобрался, сенкс
RSDN@Home 1.1 beta 2
Re[11]: Как вызвыть функцию в PHP нажатием на ссылку?
От: DSD Россия http://911.ru/cv
Дата: 03.10.03 22:00
Оценка:
Здравствуйте, РусланМаксимов, Вы писали:

РМ>Спасибо DSD за помощь!!

Да не за что. С тя пять баксов... с первой пенсии

РМ>Теперь можно вопрос не по теме?

РМ>Зачем ты помогаешь таким как я, начинающим?
Сам не знаю. Просто нравится помогать людям, и все... или просто я уже привык к этому?... хз...
Мне по жизни по своим проектам приходится постоянно быть лидером, идти на пару шагов впереди коллег по проектам.
С одной стороны, можно гнуть пальцы, типа во какой я крутой. Но это проходит быстро.
Потому что есть другая сторона, а именно: если мои коллеги попадают в затруднительную ситуацию, им есть у кого спросить совета или помощи... а мне не у кого... я и так впереди...
И приходится долбить проблему самому, иногда даже неделями, а то и месяцами. А потом кто-то у меня спросит, и получит ответ за 5 минут.
Грустно. Не за то, что я им на халяву помогу — этого мне не жалко, а грустно за то, что мне в большинстве случаев помочь некому...

РМ>Ты хорошо объясняешь, за это тебе громадное спасибо!

Я сам думаю, что я объясняю довольно хреново. Стараюсь кратко и лаконично — да, но не шибко качественно.

РМ>Не подумывал написать книгу о программировании на PHP?

Лично я считаю, что я не знаю PHP. Я никогда его специально не учил. Если приходится писать на нем — пишу с ходу, вооружившись одним лишь справочником функций с оф.сайта.
Это язык, архитектура которого мне кристально ясна, так как похожа на много других языков, но с заточкой под web. Наверное поэтому я в нем так легко ориентируюсь, и пллаваю, как рыба в воде

А писать книги, да еще по PHP... как тут верно заметили, я его не люблю Сам толком не знаю, за что... просто не люблю и все тут
Может быть за то, что он не такой гибкий, как Перл, и не такой быстрый, как Си. Наверно за это

Да и не писатель я, в общем-то...
--
DSD
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.