Автор Тема: re:как да  (Прочетена 2011 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

vjmruc

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 12
re:как да
« -: 18 Април 2011, 11:02:58 »
здравеите тъи като не мога да отворя старата тема 6те отговоря тук(сажалявам за спама)
гре6ката която имам предвид е че при проверка на неинициализирани променливи или масиви ми дава саответно :fatal error ,undefined index което пък от своя страна прекъсва кода тъи като тои не е пред мен не мога да го копирам,но по спомен ако не използвам isset се получава че във формата за рег се появява само username и там кадето пи6а echo $error_aray['login'];
кода спира!

wuser

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 85
  • -Получени: 49
  • Публикации: 2761
Re:re:как да
« Отговор #1 -: 18 Април 2011, 11:20:23 »
Да и на мен не ми дава да отворя старата тема, директно ме хвърля. Имам подозрение, че в кода дето сложих има едно прехвърляне след две секунди и кой знае защо браузъра решава да го изпълни, което означава, че SMF май нещо не ползва неща от сорта на htmlspecialchar и са възможни XSS. Дано да греша, ама не вярвам.

По твоя въпрос довечера, че сега съм на работа и нямам как да чета пиша и изпробвам код.
Мъдростта на патилото
Perl Monks: PHP - it's "training wheels without the bike" -- Randal L. Schwartz


Дееба... чувствам се все едно обяснявам на майка ми как да си отвори пощата
"не работи"
WTF?!?!? к'во значи че не работи?
Не ти се компилира, дава ти грешка, вади ти грешни резултати, компютърът ти се изключва като го напишеш или на целия квартал му спира тока?
Stilgar

wuser

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 85
  • -Получени: 49
  • Публикации: 2761
Re:re:как да
« Отговор #2 -: 20 Април 2011, 23:15:34 »
Уф, бях те забравил. Я сега сложи тук каква грешка ти вадеше, че не помня. Дърт съм и забравям.
Мъдростта на патилото
Perl Monks: PHP - it's "training wheels without the bike" -- Randal L. Schwartz


Дееба... чувствам се все едно обяснявам на майка ми как да си отвори пощата
"не работи"
WTF?!?!? к'во значи че не работи?
Не ти се компилира, дава ти грешка, вади ти грешни резултати, компютърът ти се изключва като го напишеш или на целия квартал му спира тока?
Stilgar

vjmruc

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 12
Re:re:как да
« Отговор #3 -: 20 Април 2011, 23:48:00 »
Код: PHP
  1. <?php
  2. $title='reg';
  3.   include 'header.php';
  4.   if(isset ($_SESSION['is_logged']))
  5.   {
  6.   if($_SESSION['is_logged']===true)
  7. {
  8.  header('Location:index.php');
  9.  include footer.php;
  10.  exit;
  11. }
  12. }
  13.  
  14. if(isset ($_POST['form_submit']))
  15. {
  16.   if($_POST['form_submit']==1)
  17.            {
  18. $login=addslashes(trim($_POST['login']));
  19. $error=true;
  20. $pass=(trim($_POST['pass']));
  21. $pass2=(trim($_POST['pass2']));
  22. $email=addslashes(trim($_POST['email']));
  23.       $name=addslashes(trim($_POST['real_name']));
  24.       }
  25.       if(strlen($login)<4)
  26.       {
  27.         $error_aray['login']='newaliden username';
  28.       }
  29.       if(strlen($pass)<4)
  30.       {
  31.                      $error_aray['pass']='twurde kratka parola';
  32.       }
  33.        if($pass!==$pass2)
  34.        {
  35.      $error_array['not_match']='gre6ka pri parolata';
  36.        }
  37.        if(isset ($email))
  38.        {
  39.         if(!ereg_matchi("^[[:alnum:]][a-z0-9_.-]*@[a-z0-9.-]+\.[a-z]{2,4}$", $email))
  40. {
  41. $error_array['email']='gre6ka w email';
  42. }
  43.        }
  44.    if (!ereg_matchi("^[a-zA-Z]{3,16}$",$name))
  45.  
  46. {
  47.    $error_array['wrong_name']='gre6ka w imeto';
  48. }
  49. if(!count ($error_aray)>0)
  50. {
  51.  db_int();
  52.  $sql=('SELECT COUNT(*) FROM users where login="'.$login.'"OR email="'.$email.'"');
  53.   $res=mysql_query($sql);
  54.   $row=mysql_fetch_assoc($res);
  55.   if($row['cnt']!=0)
  56.   {
  57.       $error_array['email']='gre6ka w emaila';
  58.  
  59.   }
  60. else
  61. {
  62.       mysql_query('INSERT INTO users login,pass,email,real_name VALUES("'.$login.'","'.md5($pass).'","'.$email.'","'.$name.'" ');
  63.  
  64. }
  65. }
  66. }
  67.  
  68. ?>
  69. <form action="register.php" method="post">
  70.     username:<input type="text" name="login" value=""/><?php  if(isset ($error_aray['login']))        {    echo $error_array('login');} ?> <br>
  71.     password:<input type="text" name="pass" value=""/> <?php if(isset ($error_aray['pass']))        { echo $error_aray('pass');}?> <br>
  72.     repeat password:<input type="text" name="pass2" value=""/><?php  if(isset ($error_aray['not_match']))        { echo $error_array('not_match');}?> <br>
  73.     name:<input type="text" name="real_name" value=""/><?php  if(isset ($error_aray['wrong_name']))        { echo $error_array('wrong_name');}?><br>
  74.     email:<input type="text" name="email" value=""/><?php if(isset ($error_aray['email']))        { echo $error_array('email');}?> <br>
  75.     <input type="submit" name="registrirai se" value="registrirai se" /><br>
  76.     <input type="hidden" name="form_submit"  value="1"/>
  77.     </form>
  78.  
  79. <?php
  80. include 'footer.php';
  81.  
  82. ?>
  83.  

mistakes:
Notice: Undefined index: form_submit in C:\xampp\htdocs\forum\register.php on line 16

Notice: Undefined variable: login in C:\xampp\htdocs\forum\register.php on line 25

Notice: Undefined variable: pass in C:\xampp\htdocs\forum\register.php on line 29

Notice: Undefined variable: pass2 in C:\xampp\htdocs\forum\register.php on line 33

Notice: Undefined variable: pass in C:\xampp\htdocs\forum\register.php on line 33

Fatal error: Call to undefined function ereg_matchi() in C:\xampp\htdocs\forum\register.php on line 44
« Последна редакция: 20 Април 2011, 23:55:33 от echeveria »

echeveria

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 72
  • -Получени: 93
  • Публикации: 4836
Re:re:как да
« Отговор #4 -: 20 Април 2011, 23:56:54 »
ereg_matchi("^[a-zA-Z]{3,16}$",$name) - такова животно няма! Другото не са грешки!
Днес Печатарите използват парите за да купят мозъците на онези, които ги превъзхождат, за да ги накарат да им служат и така да се превърнат в жертва на посредствеността. Това ли е причината, поради която ги наричате благо?
<iframe src="http://www.corbindavenport.com/ubuntu/widget.html" style="width:

vjmruc

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 12
Re:re:как да
« Отговор #5 -: 21 Април 2011, 00:11:22 »
тъи като явно имам още гре6ки(Fatal error: Function name must be a string in C:\xampp\htdocs\forum\register.php on line 70) дали е възможно някои да ми покаже подобна форма за рег за да видя г/д как трябва да стане

Avalanche

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 65
  • -Получени: 275
  • Публикации: 2601
  • meow
Re:re:как да
« Отговор #6 -: 21 Април 2011, 00:15:31 »
Цитат на: Google
Може би имахте предвид: preg_match
"Компютрите не правят каквото искаме, а каквото им кажем." Ако разбереш какво значи това няма да имаш големи проблеми, нито с никоя ОС, нито език, или софтуер.
Аз не съм програмист между другото!

echeveria

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 72
  • -Получени: 93
  • Публикации: 4836
Днес Печатарите използват парите за да купят мозъците на онези, които ги превъзхождат, за да ги накарат да им служат и така да се превърнат в жертва на посредствеността. Това ли е причината, поради която ги наричате благо?
<iframe src="http://www.corbindavenport.com/ubuntu/widget.html" style="width:

vjmruc

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 12
Re:re:как да
« Отговор #8 -: 21 Април 2011, 00:20:25 »
благодаря,мисля че се изложих достатъчно

Avalanche

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 65
  • -Получени: 275
  • Публикации: 2601
  • meow
Re:re:как да
« Отговор #9 -: 23 Април 2011, 13:43:26 »
благодаря,мисля че се изложих достатъчно
Защо да се излагаш, тука не си на някакво състезание, точно тука му е мястото да се "излагаме"  ;)
Цитат
mistakes:
№1 Notice: Undefined index: form_submit in C:\xampp\htdocs\forum\register.php on line 16

№2 Notice: Undefined variable: login in C:\xampp\htdocs\forum\register.php on line 25

№3 Notice: Undefined variable: pass in C:\xampp\htdocs\forum\register.php on line 29

№4 Notice: Undefined variable: pass2 in C:\xampp\htdocs\forum\register.php on line 33

№5 Notice: Undefined variable: pass in C:\xampp\htdocs\forum\register.php on line 33

№6 Fatal error: Call to undefined function ereg_matchi() in C:\xampp\htdocs\forum\register.php on line 44

№1, №2, №3, №4, №5 не са ти "mistakes", просто php те предупреждава, че имаш недефинирани променливи, ако пишеше C++, компилаторът щеше да ти даде грешка и нямаше да се компилира, ама тука няма проблеми.

№6 - Както каза Еч, такова животно като "ereg_matchi()" в php няма, замени го навсякъде с "preg_match()".

И не се предавай толкова рано ;)

"Компютрите не правят каквото искаме, а каквото им кажем." Ако разбереш какво значи това няма да имаш големи проблеми, нито с никоя ОС, нито език, или софтуер.
Аз не съм програмист между другото!