|
|
|
| Куда нужно поместить страничку, чтобы она открывлась с других компьтеров из интернета? домена у меня нет, но есть постоянный IP. И как сделать, чтобы при нажатии на ссылку на этой страничке генерировалось сообщение ну например со случайно числом, умноженным на минуты компьютера пользователя и умноженным на число, взятым из таблицы, хранящейся на моём компьютере.(в каком формате должна быть таблица). Думаю для опытного программиста это сделать не составит труда, а помощь начинающим налицо.
| |
|
|
|
|
|
|
|
для: Drank
(05.07.2004 в 20:42)
| | Для того чтобы ваш компьютер был виден другими, в конфигурационном файле Apache следует прописать ваш IP-адрес. Тогда если вы поместите в папку, прописанную в директиве DocumentRoot файлы index.php и rand.php, они будут видны из сети. По ссылке <a href=rand.php>Случаное число в моей интерпретации</a> в файле index.php будет выдаваться то что вы хотите.
Таблицу в базе данных (для определённость base) можно организовать выполнением следующих SQL-операторов:
CREATE TABLE number (num int);
INSERT INTO number VALUES (123);
|
Здесь 123 является числом, которое размещено в таблице number.
А столь замысловатую комбинацию может выполнить и MySQL (речь ведь идёт о таблице MySQL?) при помощи выполнения следующего кода PHP, который следует располжить в файле rand.php:
<?php
// Код файла rand.php
$dblocation = "localhost";
// Имя базы данных
$dbname = "base";
// Имя пользователя...
$dbuser = "root";
// Пароль
$dbpasswd = "";
// Соединяемся с сервером базы данных
$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);
if (!$dbcnx) {
echo( "<P>В настоящий момент сервер базы данных не доступен, поэтому корректное
отображение страницы невозможно.</P>" );
exit();
}
// Выбираем базу данных
if (! @mysql_select_db($dbname,$dbcnx) ) {
echo( "<P>В настоящий момент база данных не доступна, поэтому корректное
отображение страницы невозможно.</P>" );
exit();
}
// Осуществляем запрос к базе данных
$num = mysql_query("SELECT num*RAND()*MINUTE(NOW()) FROM number");
if(!$num)
{
echo "Ошибка в выполнении запроса";
exit();
}
// Извлекаем результат запроса
echo mysql_result($num,0);
?>
|
| |
|
|
|
|
|
|
|
для: Drank
(05.07.2004 в 20:42)
| | При наличии постоянного IP-адреса проблемма решается достаточно просто:
1. Разрешите свободный доступ к той папке на своем компьютере, где собираетесь хранить свои странички и соответствующим образом настраиваем IIS или Apache.
2. Для решения описанной задачи можно применить следующую связку:
2.1 При загрузке страницы на удаленной машине выполняется элемент ActiveX (создать его легко используя Delphi или С++Builder), он перехватывает текущее значение системных часов и вставляет его в скрытое поле на Вашей страничке (с его помощью можно переслать это значение непосредственно на Вашу машину, но такие фокусы проходят далеко не на всех машинах, что связано с настройками системы безопасности).
2.2 По нажатии на кнопку/ссылку пересылаем значение записанное в скрытое поле на Вашу машину.
2.3 На Вашей машине переданное значение обрабатывается cgi или win-cgi скриптом(в чем писать см.п. 2.1), скрипт обрабатывае информацию, "увязывает" ее с базой данных и генирирует страничку с требуемым сообщением; формат таблицы по большому счету не имеет значения.
З.Ы. Можно конечно извращаться устанавливая Apache, PHP или Perl & MySQL, но система станет более сложной и по объективным причинам будет обладать большим временем отклика. | |
|
|
|
|
|
|
|
для: Варелка
(06.07.2004 в 00:42)
| | Да, чуть не забыл, НЕ ЗАБУДЬ НАСТРОИТЬ ФАЙРВОЛ! | |
|
|
|
|
|
|
|
для: Варелка
(06.07.2004 в 00:42)
| | Ну не знай... Мне, как дизайнеру, изучать такие новые слова, как ActiveX уже сложновато :) | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(06.07.2004 в 01:59)
| | Ну или можно написать аплет ; ).
Чел же, как я понял, учится, пробует... Путей много... А за тебя и так все напишут : )))
Вообще описанная схема реализуется приблизительно за 30 мин, теми кто Builder пару раз открывал и хдето про windows API слышал. Ну накинь минут 15-20 на установку среды, в которой собирашся кодить.
Потом, используя ActiveX можно выудить есщо много пользительной информации :)
К тому же повторю плюсы: никакого дополнительного ПО, никаких интерпретаторов, легко организовывать механизм сессий.
Если будет время на работе, могу и сам накрапать. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(06.07.2004 в 01:59)
| | >Мне, как дизайнеру, изучать такие новые слова,
>как ActiveX уже сложновато :)
Ну очень новое слово, т-щ Дизайнер... :) | |
|
|
|
|
|
|
|
для: Кузнецов М.В.
(06.07.2004 в 10:03)
| | Ага и к тому же страшное :) | |
|
|
|