Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Не записываются данные в таблицу MySQL / 2 сообщений из 2, страница 1 из 1
19.09.2015, 16:41:04
    #39056031
GreenTraf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не записываются данные в таблицу MySQL
Доброго времени суток уважаемые пользователи форума!У меня возникла проблема следующего рода.
Есть база данных в phpmyadmin.Во все таблицы записываются данные например новости и прочее.А вот страница регистрации связанная с таблицой users не записывает данные в таблицу users.В скрипте ошибок нет проверяли!
Привилегии пользователя добавлены все.На все запросы.
В чём причина?Помогите пожалуйста! Код файла registration ниже:
Код: 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.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
<?php
$ip = getenv("REMOTE_ADDR");
$ip = htmlspecialchars(substr($ip,0,15), ENT_QUOTES);
$errorlogin = "<p class=\"er\">Вы уже зарегестрированны!</p>";


$ip_number = sprintf("%u", ip2long($ip));

$country_query  = "SELECT `cc` FROM `geoip_db` WHERE `start`<=$ip_number AND `end`>=$ip_number";
$country_exec = mysql_query($country_query);
$ccode_array = @mysql_fetch_array($country_exec);
$country_code = $ccode_array['cc'];

if ($country_code)
	{
	$flag = '/images/flag/'.strtolower($country_code).'.png';
	}
	else
	{ 
	$flag = '/images/flag/not.png';
     }  
	 
$captcha = '/cap/index.php?'.session_name().'='. session_id().'';	

if(!$login) {
if($_GET['action'] == "save") {
		$ulogin	= htmlspecialchars($_POST['ulogin'], ENT_QUOTES);
		$pass	= $_POST['pass'];
		$repass	= $_POST['repass'];
		$email	= htmlspecialchars($_POST['email'], ENT_QUOTES);
		$wmz	= htmlspecialchars($_POST['wmz'], ENT_QUOTES);
		$code	= htmlspecialchars($_POST["code"], ENT_QUOTES);
        $cap    = (isset($_SESSION['captcha_keystring']) && strtolower($_SESSION['captcha_keystring']) == strtolower($_POST['keystring']));
		
		if(!$ulogin || !$pass || !$repass || !$email ) {
			$error = "<p class=\"er\"><b>".$lng['er_all_input']."</b></p>";
		} elseif(strlen($ulogin) > 20 || strlen($ulogin) < 3) {
			$error = "<p class=\"er\"><b>".$lng['er_login_symbols']."</b></p>";
		} elseif(!intval($_POST['yes'])) {
			$error = "<p class=\"er\"><b>".$lng['er_law']."</b></p>";
		} elseif($pass != $repass) {
			$error = "<p class=\"er\"><b>".$lng['er_pass_repass']."</b></p>";
		} elseif(strlen($email) > 30) {
			$error = "<p class=\"er\"><b>".$lng['er_mail_symbols']."</b></p>";
		
	    
		
		} elseif(!$cap) {
			$error = "<p class=\"er\"><b>Вы ввели неправельно каптчу</b></p>";
		
		
		} elseif(strlen($wmz) != 13 && $wmz) {
			$error = "<p class=\"er\"><b>".$lng['er_purse_symbols']."</b></p>";
		
		} elseif(substr($wmz,0,1) != $cfgPurse && $wmz) {
			$error = "<p class=\"er\"><b>".$lng['er_purse_symbol']." <u>".$cfgPurse."</b></u></p>";
		
		} elseif(mysql_num_rows(mysql_query("SELECT wmz FROM users WHERE wmz = '".$wmz."'"))) {
			$error = "<p class=\"er\"><b>".$lng['er_purse_db']."!</b></p>";
		
		} elseif(!preg_match("/^[a-z0-9_.-]{1,20}@(([a-z0-9-]+\.)+(com|net|org|mil|edu|gov|arpa|info|biz|[a-z]{2})|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})$/is", $email)) {
			$error = "<p class=\"er\"><b>".$lng['er_mail']."</b></p>";
		} elseif(mysql_num_rows(mysql_query("SELECT login FROM users WHERE login = '".$ulogin."'"))) {
			$error = "<p class=\"er\"><b>".$lng['er_login_db']."</b></p>";
		
		} elseif(mysql_num_rows(mysql_query("SELECT mail FROM users WHERE mail = '".$email."'"))) {
			$error = "<p class=\"er\"><b>".$lng['er_mail_db']."!</b></p>";
		} else {
			$time	 = time();

			if($referal) { $ref_id = intval($referal); } else { $ref_id = 0; }

			$sql = "INSERT INTO users (login, pass, mail, wmz, go_time, ip, ref_id, reg_time) VALUES ('".$ulogin."', '".$pass."', '".$email."', '".$wmz."', '".$time."', '".$ip."', '".$ref_id."',  '".$time."')";
			mysql_query($sql);
			$lid = mysql_insert_id();

			$subject = $lng['er_reg_ok'];

			$headers = "From: ".$adminmail."\n";
			$headers .= "Reply-to: ".$adminmail."\n";
			$headers .= "X-Sender: < http://".$cfgURL." >\n";
			$headers .= "Content-Type: text/html; charset=utf-8\n";

			$text = "Здравствуйте <b>".$ulogin."!</b>
Поздравляем Вас с успешной регистрацией в сервисе <a href=\"http://".$cfgURL."/\" target=\"_blank\">http://".$cfgURL."</a>
Ваш Логин в системе: <b>".$ulogin."</b>
Ваш пароль: <b>".$repass."</b>

Ваша реферальная ссылка: <a href=\"http://".$cfgURL."/?ref=".$lid."\" target=\"_blank\">http://".$cfgURL."/?ref=".$lid."</a>
С Уважением к Вам, администрация проекта ".$cfgURL;

			mail($email, $subject, $text, $headers);

			$ulogin	= "";
			$pass	= "";
			$repass	= "";
			$email	= "";
			$wmz	= "";
			$error = 1;
		}
}

if($error == 1) {

	print "<p class=\"erok\"><b>".$lng['er_reg_ok']."</b></p>";
	include "../lib/auth.php";

} else {
	print $error;
?>






<table>
<tr>
<td width="620">
<form action="?action=save" method="post">
<table align="left" width="600" border="0" cellpadding="2" cellspacing="14" class="front-signup" style="border-collapse: separate;">	
	
	<tr>
		<td align="right"><b>Логин:</b><font color="red">*</font></td>
		<td align="left"><input type="text" name="ulogin" value="<?php print $ulogin; ?>" size="30" maxlength="20" /></td>
	</tr>
	
	<tr>
	<td colspan="2"><hr/>
	</td>
	</tr>
	
	<tr>
		<td align="right"><b>Пароль:</b><font color="red">*</font></td><td align="left"><input type="password" name="pass" size="30" maxlength="20" /></td>
	</tr>
	
	<tr>
	<td colspan="2"><hr/>
	</td>
	</tr>
	
	<tr>
		<td align="right"><b>Подтвердите пароль:</b><font color="red">*</font></td><td align="left"><input type="password" name="repass" size="30" maxlength="20" /></td>
	</tr>
	
	<tr>
	<td colspan="2"><hr/>
	</td>
	</tr>
	
	<tr>
		<td align="right"><b>Email:</b><font color="red">*</font></td><td align="left"><input type="text" name="email" value="<?php print $email; ?>" size="30" maxlength="30" /></td>
	</tr>
	
	<tr>
	<td colspan="2"><hr/>
	</td>
	</tr>
	
	<tr>
		<td align="right"><b>WM<?php print $cfgPurse; ?>- Кошелёк:</b><font color="red">*</font></td><td align="left"><input type="text" name="wmz" value="<?php print $wmz; ?>" size="30" maxlength="13" /></td>
	</tr>
	
	
	<tr>
	<td colspan="2"><hr/>
	</td>
	</tr>
	
	<tr>
		<td align="right"><b>Ваш IP Адрес:</b></td>
		<td align="left"><b><?php print $ip; ?></b>   <img src="<?php print $flag; ?>"></td>
	</tr>
	
	<tr>
	<td colspan="2"><hr/>
	</td>
	</tr>
	
<tr>
		<td align="right"><b>Введите проверочный код:</b><font color="red">*</font></td>
        <td align="left">
      <input type="text" size="5" maxlength="6" name="keystring">
	  <img id="myimage" src='<?php print $captcha; ?>' />
    <a href="#" onclick="document.getElementById('myimage').src='<?php print $captcha; ?>'+Math.random(); return false;"> <img id="myimage" src='/images/refresh.png' width="25"/></a>
	  
      </td>
	</tr>
	
	<tr>
	<td colspan="2"><hr/>
	</td>
	</tr>
	
	<tr>

		<td colspan="2" align="center"> <input class="check" type="checkbox" name="yes" value="1" /> <a href="/specification/" target="_blank"> <b>Я согласен с правилами системы</b></a><font color="red">*</font></td>
	</tr>
	
	<tr><td colspan="2">
<center>
<font color="red"><b>*</b></font> - Поля обязательные для заполнения
</center>
<div style="margin-top: 15px; margin-left: 40%;"><input id="prb-distanse" class="prb-mbut" type='submit' name='submit' value='<?php print $lng['register']; ?>' /></div>
</td></tr>
	
</table>
</form>
</td>
<td>
<table>
<tr>
<td>
<div class="sidebar" style="text-align:left;height: 663px;">
<?php
print $body;
?>
</div>
</td>
</tr>
</table>
</td>
</tr>

</table>
<?php };	
	}  else {
	print $errorlogin; }?>

...
Рейтинг: 0 / 0
20.09.2015, 13:22:22
    #39056593
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не записываются данные в таблицу MySQL
GreenTraf,

Три совета:
-- мониторь запросы на сервер и давай их нам, если сам не понимаешь, что они делают. Не давай нам PHP-код.
-- проверь, комитишь ли ты транзакции, и в каком режиме управления транзакциями ты работаешь. Основная таблица -- users (как я понял), проверь какой у неё engine, Inno или MyISAM. Для Inno обязательно использование транзакций, соотв., их нужно коммитить.
Далее, есть два режима работы соединения с MySQL, autocommit и без него. Если autocommit включён, каждый оператор SQL выполнившись успешно, будет за-commit-чен автоматом, если нет -- надо явно выполнять COMMIT через API или явным оператором.
-- ну и хорошо бы проверять всякие ошибки от сервера. С таким (наивным) подходом к формированию запросов в БД могут быть и просто тупо синтаксические ошибки в операторах.

Кстати, SQLInjection тебе грозит при первой же попытке взлома.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Не записываются данные в таблицу MySQL / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]