Ваш прогнозируемый поток:
Пользователь вводит лицензионный ключ на своем сайте (происходит на его сервере)
Лицензионный ключ размещен в файле /validate.php ... (происходит на его сервере)
... который включает в себя файл с моего сервера (который не работает)
Ваш фактический поток будет:
Пользователь вводит лицензионный ключ на своем сайте (происходит на его сервере)
Лицензионный ключ размещен в файле yoursite.com/validate.php ... (происходит на его сервере)
... который запускает скрипт на вашем сервере.
Ваш сервер проверяет, включен ли лицензионный ключ в базу данных.
Если да, устанавливает сеанс на вашем сервере для этого пользователя и перенаправляет в раздел администратора на вашем сервере.
Если нет, перенаправляет на страницу входа на вашем сервере с сообщением об ошибке.
Правильный способ настроить его - это иметь файл на вашем сервере, который принимает параметр URL лицензионного ключа, проверяет, является ли он действительным, а затем выводит что-то, чтобы указать, является ли он или нет.
validate.php
(на вашем сервере)
<?php
session_start();
$key = $_POST['license_key'];
// Please clean this variable, obvious SQL injection, blah blah
include('function.php'); // From your server, contains the validate() function
if (validate($key))
{
// Log them in on your server
$_SESSION['license_key'] = $key;
}
else
{
// Say error and show the login form from your server
}
Теперь кто-то на другом сервере может установить action
на своих <form>
на http://yourserver.com/validate.php
, и ваш сервер оттуда заменится.
Когда вы включаете скрипт, все переменные в включенном скрипте будут работать так, как если бы они были встроенными, внутри , включая script.
По сути, просто представьте, что весь этот код находится внутри validate.php
, и он будет работать так, как если бы он был.
Здесь нужно обратить внимание - если function.php
находится в другом каталоге, чем validate.php
, include
внутри validate.php
, который запрашивает db_conn.php
, не будет выполнен - вам нужно изменить эта страница соответствует пути из , включая файл .