- cgi проблем
12
WT форуми -> PHP MySQL ASP.NET -> cgi проблем
Създайте нова тема Напишете отговор 
Автор Съобщение
admin
Активен
Активен

Регистриран на: 02/07/2005 1:36 am

Support: 224
Bonus: 474
Мнения: 11683
Мнение 03/12/2005 1:26 pm      Отговорете с цитат


Ето какво трябва да направиш постъпково:

Създаваш в някаква отделна папка (ама не cgi-bin) два файла:
Единият се казва form.html и има следния код:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
<form action="form.php" method="post">
Име: <input type="text" name="ime" value="">  <br>
Фамилия: <input type="text" name="familia" value="">  <br>
Град: <input type="text" name="grad" value=""> <br>
E-mail: <input tipe="text" name="mail" value="">  <br>
<input type="radio" name="pol" value="male">Мъж
<input type="radio" name="pol" value="female">Жена <br>
<input type="submit" value="Потвърди">
</form>
</body>
</html>


Другия файл се казва form.php :

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
<?php
$ime=$HTTP_POST_VARS['ime'];
$familia=$HTTP_POST_VARS['familia'];
$grad=$HTTP_POST_VARS['grad'];
$mail=$HTTP_POST_VARS['mail'];
$pool=$HTTP_POST_VARS['pol'];

function filled_out($form_vars)
{

  foreach ($form_vars as $key => $value)
  {
     if (!isset($key) || ($value == ''))
        return false;
  }
  return true;
}

function valid_email($address)
{
  if (ereg('^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$', $address))
    return true;
    else
    return false;
}

if(!filled_out($HTTP_POST_VARS))
{
echo " <b><center> <font color=#ff0000> НЕ сте попълнили всички полета. ";
exit;
}
if (!valid_email($mail))
{
echo"<b><center><font color=#ff0000>Въвели сте невалиден eMail.";
exit;
}





if (!file_exists("db.html"))
{
$table=
'
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
<table border="1">
       <tr>
        <td>Име</td>
        <td>Фамилия</td>
        <td>Град</td>
        <td>email</td>
        <td>Пол</td>
      </tr>
       <tr>
        <td>'.$ime.'</td>
        <td>'.$familia.'</td>
        <td>'.$grad.'</td>
        <td>'.$mail.'</td>
        <td>'.$pool.'</td>
       <tr>
';
}
else
{
$table=
'
       <tr>
        <td>'.$ime.'</td>
        <td>'.$familia.'</td>
        <td>'.$grad.'</td>
        <td>'.$mail.'</td>
        <td>'.$pool.'</td>
       <tr>
';
}

        $fp = fopen ("db.html" ,"a");
          fwrite($fp, $table );
          fclose($fp);

echo "Вашите данни са записани!";
?>


Стартираш файла form.html през интернет и попълваш формуляра:
Ако го попълниш коректно ще ти изпише
"Вашите данни са записани".

В същата тази папка ще се появи файла db.html където ще може да
преглеждаш какво е попълвано от потребителите.

Всичко е тествано.
Ето ти и демо :
http://admin.web-tourist.net/formtest/form.html

Ако нещо не става или не ти е ясно пиши тук.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
Покажи мнения от преди:    
Създайте нова тема   Напишете отговор    web-tourist.net Форуми -> PHP MySQL ASP.NET Часовете са според зоната GMT + 2 Часа
12
Страница 2 от 2


 
Идете на:  
Не Можете да пускате нови теми
Не Можете да отговаряте на темите
Не Можете да променяте съобщенията си
Не Можете да изтривате съобщенията си
Не Можете да гласувате в анкети