13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
1

Достаем value

18.07.2010, 01:13. Показов 1807. Ответов 24
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Имеем ссылку: /rega.html?r=atata
Имеем форму :
PHP
1
<input type='text' size='30' name='refer' />
Что прописать в value чтобы выдавало atata?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.07.2010, 01:13
Ответы с готовыми решениями:

Достаём даные из Url
Как достать то что находиться после надпписи id (циффры) У пользователей есть ID но в защите от...

Достаем пароль из хеша
Всем привет. У меня есть база слов, хеш+сид, шифровка md5. Нужно написать скрипт, который достанет...

Достаём данные из словаря
Здравствуйте. Есть словарь: array = {'a': 1, 'b': 2, 'c': 3} Как мне циклом можно вывести сразу...

Достаём ключи Microsoft из реестра Windows
Добрый день. На работе для учёта лицензии надо написать программу выдёргивающую из реестра ключи...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
24
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
18.07.2010, 01:20 2
PHP
1
2
3
4
<?php
$r = (isset($_GET['r']))? $_GET['r']:'';
echo "<input type='text' size='30' name='refer' value='$r'/>";
?>
Добавлено через 2 минуты
Я сделал с проверкой, а можно и так:
PHP
1
echo "<input type='text' size='30' name='refer' value='{$_GET['r']}'/>";
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
18.07.2010, 01:31  [ТС] 3
Выдает пустое поле всёравно...
Может это из за точно что сама ссылка прописана через html?
PHP туда только через include попадает, а оттуда вродь невидно ссылки
0
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
18.07.2010, 01:32 4
Переименуйте файл в rega.php
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
18.07.2010, 01:34  [ТС] 5
Цитата Сообщение от Dimedrol Посмотреть сообщение
Переименуйте файл в rega.php
сам файл называется rega.php но в адресной строке прописывается rega.html через whatpage определяется имя а далее выбираются все компоненты для него в том числе rega.php
0
49 / 49 / 3
Регистрация: 16.05.2010
Сообщений: 348
18.07.2010, 06:22 6
если нужно чтоб файл был именно html, нужно настроить чтоб сервер обрабатывал в файлах html php вставки.
и тогда в файл rega.html вставить
PHP
1
2
3
<?php
echo "<input type='text' size='30' name='refer' value='{$_GET['r']}'/>";
?>
0
WEB-developer
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
18.07.2010, 09:29 7
а вот так:
PHP
1
2
3
<?php
echo "<input type='text' size='30' name='refer' value='".$_GET['r']."'/>";
?>
Добавлено через 17 секунд
а вот так:
PHP
1
2
3
<?php
echo "<input type='text' size='30' name='refer' value='".$_GET['r']."'/>";
?>
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
18.07.2010, 10:12  [ТС] 8
Может можно сделать так чтобы 'r' сохранилось в куки? и потом оттуда бралось?
это что-то вроде добавление
PHP
1
        setcookie("r",$r,$time+1800);
а это
PHP
1
isset($_COOKIE['r'])
вытаскивание, верно?

или может в начале GET замутить?
0
WEB-developer
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
18.07.2010, 10:18 9
думаю будет надёжнее и проще записать в сессии....
PHP
1
2
session_start();
$_SESSION['r']=$_GET['r'];
на другой странице вытаскиваете
PHP
1
2
session_start();
$r=$_SESSION['r'];
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
18.07.2010, 11:23  [ТС] 10
PHP
1
2
3
4
5
<?php
session_start();
$r=$_SESSION['r'];
echo "<input type='text' size='30' name='refer' value='$r'/>";
?>
Не вытащил почему-то, мож через куки попробывать? помогите правильно записать
Сделал :
PHP
1
2
3
4
<?php
$r = (isset($_GET['r']))? $_GET['r']:'';
setcookie("r",$r,$time+1800);
?>
PHP
1
2
3
4
<?php
$r=isset($_COOKIE['r']);
echo "<input type='text' size='30' name='refer' value='$r'/>";
?>
не помогло может я ошибку допустил ?! проверьте плз...
0
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
18.07.2010, 12:09 11
PHP
1
2
3
4
<?php
$r = (isset($_GET['r']))? $_GET['r']:'';
setcookie("r",$r,$time+1800);
?>
PHP
1
2
3
<?php
echo "<input type='text' size='30' name='refer' value='{$_COOKIE['r']}'/>";
?>
Но толку от этого не будет. Даже в этом коде Вам надо получить сначала GET...
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
18.07.2010, 12:30  [ТС] 12
если сделать так /register.php?r=asfasg тут через гет добавляется сразу, то работает
Может можно как-нибудь сделать отдельный файл который будет записывать куки и дальше редирект на привычную страницу, где останется только их извлечь?
Попробывал с файлом /reg.php?r=sdgsdg
содержание:
PHP
1
2
3
4
<?php
$r = (isset($_GET['r']))? $_GET['r']:'';
setcookie("r",$r,$time+1800);
?>
куки не записал . . .
0
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
18.07.2010, 13:00 13
Напишите так:
PHP
1
2
3
4
5
<?php
error_reporting(E_ALL);
$r = (isset($_GET['r']))? $_GET['r']:'';
setcookie("r",$r,$time+1800);
?>
Что выведет?
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
18.07.2010, 14:16  [ТС] 14
Notice: Undefined variable: time in Z:\home\test2.ru\www\reg.php on line 4
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\test2.ru\www\reg.php:4) in Z:\home\test2.ru\www\reg.php on line 4
0
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
18.07.2010, 15:03 15
Цитата Сообщение от koc94ok Посмотреть сообщение
Warning: Cannot modify header information - headers already sent by
Эта ошибка выпрыгивает когда Вы уже что-то выведи в браузер. Вот пример.
PHP
1
2
3
4
5
6
7
8
9
<?php
error_reporting(E_ALL);
?><html>
<head>
</head>
<body>
<?php header("Location:index.php");?>
</body>
</html>
Могу предположить, что Вы этот файл куда-то инклудите.
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
18.07.2010, 22:20  [ТС] 16
Dimedrol Глянь, может чего придумаешь...
index.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php
include('connectdb.php');// подключение к серверу MySql и выбор БД
$userinfo='';
$state='0';
if( (isset($_COOKIE['login'])) & (isset($_COOKIE['pass'])) ) {// если в куках лежит логин и зашифрованый пароля
  if (!isset($_GET['exit'])) {// если кнопка выход не была нажата
    $login=mysql_real_escape_string($_COOKIE['login']);
    $pass=mysql_real_escape_string($_COOKIE['pass']);
 
    // проверяем наличие пользователя в БД и достаём оттуда пароль
    $sql="SELECT id, pass FROM users WHERE login='$login'";
    $res=mysql_query($sql);
    if(mysql_num_rows($res)>0){// если пользователь есть в БД
      $userinfo = mysql_fetch_array($res);// в этой переменной лежит пароль из БД
      if(strcmp($pass,md5($userinfo['pass'])) == 0) { //проверяем схожесть пароля из БД с паролем из куков
 
        // достаём все данные из БД
        $sql="SELECT * FROM users WHERE login='$login'";
        $res=mysql_query($sql);
        $userinfo=mysql_fetch_array($res); // в этой переменной будет лежать вся информация о пользователе из БД
        $time=time();
        // устанавливаем куки для запоминания статуса пользователя
        setcookie("login",$login,$time+1800);
        setcookie("pass",$pass,$time+1800);
        $state = 1;// статус, если 1, тогда пользователь авторизован
      }
    }
  } else {
    //обнуляем куки, если была нажата кнопка выход
    setcookie("login");
    setcookie("pass");
  }
}
if($state != 1) {// если после проверки куков, оказалось, что пользователь не авторизован, то идем дальше
  if( (isset($_POST['login'])) & (isset($_POST['pass'])) ){ // если пользователь ввёл логин и пароль
  $login = mysql_real_escape_string($_POST['login']);     
 
  // проверяем наличие пользователя в БД и достаём оттуда пароль
  $sql = "SELECT id, pass FROM users WHERE login='$login'";
  $res = mysql_query($sql);
    if(mysql_num_rows($res)>0) {// если пользователь есть в БД
      $userinfo = mysql_fetch_array($res);// в этой переменной лежит пароль из БД и номер пользователя
      $pass = mysql_real_escape_string($_POST['pass']);
      if(strcmp($pass,$userinfo['pass'])==0){
 
        // достаём все данные из БД
        $sql="SELECT * FROM users WHERE login='$login'";
        $res=mysql_query($sql);
        $userinfo=mysql_fetch_array($res);// в этой переменной будет лежать вся информация о пользователе из БД
        $time=time();
        // устанавливаем куки для запоминания статуса пользователя, пароль шифруем
        setcookie("login", $login, $time+1800);
        setcookie("pass", md5($pass), $time+1800);
        $state = 1;// статус, если 1, тогда пользователь авторизован
      }
    }
  }
}
@$whatpage = preg_replace("/[^a-z0-9-_]/i","",$_REQUEST['whatpage']);
@$subpage = preg_replace("/[^a-z0-9-_]/i","",$_REQUEST['subpage']);
foreach ($_GET as $var => $secvalue) { if ((eregi ("<[^>]*script*\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*object*\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*iframe*\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*applet*\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*meta*\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*style*\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*form*\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*img*\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*onmouseover*\"?[^>]*>", $secvalue)) || (eregi ("\([^>]*\"?[^)]*\)", $secvalue)) || (eregi ("\"", $secvalue))) { die("BAD YOUR CODE"); exit; }}
foreach ($_POST as $secvalue) { if ((eregi ("<[^>]*script *\"?[^>]*>", $secvalue)) || (eregi ("<[^>]*style*\"?[^>]*>", $secvalue))) { die("BAD YOUR CODE"); exit; }}
include $_SERVER['DOCUMENT_ROOT'].'/engine/functions.php';
$template=myconfig('template');
$sitename=myconfig('sitename');
$dir = opendir(ARTICLES);
if (empty($whatpage)) { $myFile=ARTICLES.'main.dat'; } else { $myFile=ARTICLES."$whatpage.dat"; }
$fh = @fopen($myFile, 'r'); 
if (!$fh) { $myFile=ARTICLES.'404.dat'; header('Status: 404'); header('HTTP/1.1 404 Not Found'); $fh = @fopen($myFile, 'r'); } 
$data = fread($fh, filesize($myFile));
fclose($fh);
$text = explode("<!-- Kan_title -->",$data);
@$sitetitle=$text[1];
$text = explode("<!-- Kan_content -->",$data);
@$contentcenter .= $text[1];
$text = explode("<!-- Kan_myinclude -->",$data);
@$myinclude .= trim($text[1]);
$text = explode("<!-- Kan_description -->",$data);
@$metadescription .= trim($text[1]);
$text = explode("<!-- Kan_keywords -->",$data);
@$metakeywords .= trim($text[1]);
if (empty($whatpage)) { @$lnav = ''; } else { @$lnav=linkator($subpage, $sitetitle); }
include $localpath ."/templates/$template/template.php";
?>
register.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?
include('connectdb.php');// подключение к серверу MySql и выбор БД
 
if (($_POST['login']!='') || 
    ($_POST['pass1']!='') || 
    ($_POST['pass2']!='') || 
    ($_POST['email']!='')) { // если все данные для регистрации введены, то продолжаем
    $pass1 = mysql_real_escape_string($_POST['pass1']);
    $pass2 = mysql_real_escape_string($_POST['pass2']);
 
    if (strcmp($pass1, $pass2) == 0) {// если пароли совпадают, то продолжаем
      $login = mysql_real_escape_string($_POST['login']);
      $email = mysql_real_escape_string($_POST['email']);
      $refer = mysql_real_escape_string($_POST['refer']);
 
      //проверяем наличие в БД пользователя с логином $login
$sql="SELECT * FROM users WHERE login='".mysql_real_escape_string($login)."'";
$res=mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($res) == 0) {
 
          // sql-скрипт для добавления даных в таблицу
          $sql = 'INSERT INTO users(login, pass, email, refer) 
                  VALUES("'.$login.'", "'.$pass1.'", "'.$email.'", "'.$refer.'")';
          if(mysql_query($sql)) {// выполняем скрипт
            echo 'Пользователь '.$_POST['login'].' успешно зарегистрирован! <a href="/index.php">Форма для входа.';
          } else {
            echo 'При регистрации произошла ошибка, <a href="/register.html">повторите попытку</a>.';
          }
        } else echo 'Пользователь с таким логином уже зарегистрирован!';
    } else echo 'Введенные пароли не совпадают, <a href="/register.html">повторите попытку</a>.';
} else {
?>
 
  <form method='post' action='/register.html'>
  Введите Логин: <input type='text' size='30' name='login' /><br />
  Введите e-mail: <input type=text size=30 name='email' /><br />
  Пароль: <input type='password' name='pass1' size='30' /><br />
  Повторите пароль: <input type='password' name='pass2' size='30' /><br />
 *Вас пригласил: 
  <input type='text' size='30' name='refer' value=''/>
  <input type='submit' value='Регистрация' />
 * - необязательное поле
<?  
}
?>
</form>
0
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
18.07.2010, 22:24 17
register.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?
include('connectdb.php');// подключение к серверу MySql и выбор БД
 
if (($_POST['login']!='') || 
    ($_POST['pass1']!='') || 
    ($_POST['pass2']!='') || 
    ($_POST['email']!='')) { // если все данные для регистрации введены, то продолжаем
    $pass1 = mysql_real_escape_string($_POST['pass1']);
    $pass2 = mysql_real_escape_string($_POST['pass2']);
 
    if (strcmp($pass1, $pass2) == 0) {// если пароли совпадают, то продолжаем
      $login = mysql_real_escape_string($_POST['login']);
      $email = mysql_real_escape_string($_POST['email']);
      $refer = mysql_real_escape_string($_POST['refer']);
 
      //проверяем наличие в БД пользователя с логином $login
$sql="SELECT * FROM users WHERE login='".mysql_real_escape_string($login)."'";
$res=mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($res) == 0) {
 
          // sql-скрипт для добавления даных в таблицу
          $sql = 'INSERT INTO users(login, pass, email, refer) 
                  VALUES("'.$login.'", "'.$pass1.'", "'.$email.'", "'.$refer.'")';
          if(mysql_query($sql)) {// выполняем скрипт
            echo 'Пользователь '.$_POST['login'].' успешно зарегистрирован! <a href="/index.php">Форма для входа.';
          } else {
            echo 'При регистрации произошла ошибка, <a href="/register.html">повторите попытку</a>.';
          }
        } else echo 'Пользователь с таким логином уже зарегистрирован!';
    } else echo 'Введенные пароли не совпадают, <a href="/register.html">повторите попытку</a>.';
} else {
$r=$_GET['r'];
$r=(!$r)?'':$r;
$form=<<<FORM
  <form method='post' action='/register.html'>
  Введите Логин: <input type='text' size='30' name='login' /><br />
  Введите e-mail: <input type=text size=30 name='email' /><br />
  Пароль: <input type='password' name='pass1' size='30' /><br />
  Повторите пароль: <input type='password' name='pass2' size='30' /><br />
 *Вас пригласил: 
  <input type='text' size='30' name='refer' value='$r'/>
  <input type='submit' value='Регистрация' />
 * - необязательное поле 
FORM;
echo $form;
}
?>
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
18.07.2010, 23:28  [ТС] 18
Цитата Сообщение от Dimedrol Посмотреть сообщение
register.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?
include('connectdb.php');// подключение к серверу MySql и выбор БД
 
if (($_POST['login']!='') || 
    ($_POST['pass1']!='') || 
    ($_POST['pass2']!='') || 
    ($_POST['email']!='')) { // если все данные для регистрации введены, то продолжаем
    $pass1 = mysql_real_escape_string($_POST['pass1']);
    $pass2 = mysql_real_escape_string($_POST['pass2']);
 
    if (strcmp($pass1, $pass2) == 0) {// если пароли совпадают, то продолжаем
      $login = mysql_real_escape_string($_POST['login']);
      $email = mysql_real_escape_string($_POST['email']);
      $refer = mysql_real_escape_string($_POST['refer']);
 
      //проверяем наличие в БД пользователя с логином $login
$sql="SELECT * FROM users WHERE login='".mysql_real_escape_string($login)."'";
$res=mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($res) == 0) {
 
          // sql-скрипт для добавления даных в таблицу
          $sql = 'INSERT INTO users(login, pass, email, refer) 
                  VALUES("'.$login.'", "'.$pass1.'", "'.$email.'", "'.$refer.'")';
          if(mysql_query($sql)) {// выполняем скрипт
            echo 'Пользователь '.$_POST['login'].' успешно зарегистрирован! <a href="/index.php">Форма для входа.';
          } else {
            echo 'При регистрации произошла ошибка, <a href="/register.html">повторите попытку</a>.';
          }
        } else echo 'Пользователь с таким логином уже зарегистрирован!';
    } else echo 'Введенные пароли не совпадают, <a href="/register.html">повторите попытку</a>.';
} else {
$r=$_GET['r'];
$r=(!$r)?'':$r;
$form=<<<FORM
  <form method='post' action='/register.html'>
  Введите Логин: <input type='text' size='30' name='login' /><br />
  Введите e-mail: <input type=text size=30 name='email' /><br />
  Пароль: <input type='password' name='pass1' size='30' /><br />
  Повторите пароль: <input type='password' name='pass2' size='30' /><br />
 *Вас пригласил: 
  <input type='text' size='30' name='refer' value='$r'/>
  <input type='submit' value='Регистрация' />
 * - необязательное поле 
FORM;
echo $form;
}
?>
В /register.php?r=blablabla все работает, но мне нужно в этот дурацкий шаблон засунуть), как думаешь через что еще можно передать r? куки к примеру? может попробовать вариант с куками добить?
0
2378 / 941 / 129
Регистрация: 25.04.2009
Сообщений: 2,635
Записей в блоге: 4
18.07.2010, 23:30 19
В индеск.php вставь сверху
PHP
1
2
session_start();
$_SESSION['r']=$_GET['r'];
0
13 / 13 / 2
Регистрация: 22.04.2010
Сообщений: 643
19.07.2010, 00:11  [ТС] 20
Цитата Сообщение от Dimedrol Посмотреть сообщение
В индеск.php вставь сверху
PHP
1
2
session_start();
$_SESSION['r']=$_GET['r'];
А вынуть как?
0
19.07.2010, 00:11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru