|
|
|
| Я еще новечек в этом деле, но учусь.
Есть переменая 'percent' , которую я по формуле высчитываю и сохраняю в базе, но она почему то не сохраняет в базе. Подскажите в чем дело
<?php
$query = "UPDATE tb_users SET percent='$percent' where id='$id'";
mysql_query($query) or die(mysql_error());
echo "<font color=\"green\"><b>Сохранено.</b></font><br><br>";
}
if (isset($_GET["id"]))
{
$id=$_GET["id"];
if ($_GET["option"]=="edit")
{
$tablae = mysql_query("SELECT * FROM tb_users where id='$id'");
$registroe = mysql_fetch_array($tablae);
$registroe["percent"] = ($registroe["money"]/100) ;
?>
<form method="post" action="index.php?op=7">
<b>Проба</b><br>
<table>
<tr>
<th width="200">Число:</th><td><b><?= $registroe["percent"] ?></b>$<br></td><tr>
?>
|
| |
|
|
|
|
|
|
|
для: Ermak
(23.12.2009 в 08:21)
| | Во-первых - код содержит массу ошибок.
Во-вторых - разве вам парсер не выдает предупреждений об ошибках?
В третьих - с чего это первой строкой срзу идет обновление, чего и от кого?
В четвертых - где же сама форма (кроме ее заголовка)?
В пятых.... В общем так нельзя учиться. | |
|
|
|
|
|
|
|
для: sim5
(23.12.2009 в 08:37)
| | Это часть кода
Вот можно сказать весь
<?php
if (isset($_POST["id"]))
{
$id=$_POST["id"];
$username=$_POST["username"];
$password=$_POST["password"];
$referer=$_POST["referer"];
$email=$_POST["email"];
$pemail=$_POST["pemail"];
$country=$_POST["country"];
$vistis=$_POST["vistis"];
$referals=$_POST["referals"];
$referalvisits=$_POST["referalvisits"];
$money=$_POST["money"];
$user_status=$_POST["user_status"];
$percent=$_POST["percent"];
$query = "UPDATE tb_users SET username='$username', percent='$percent', password='$password', referer='$referer',
email='$email', pemail='$pemail', country='$country', visits='$vistis', referals='$referals', referalvisits='$referalvisits',
money='$money', money_prec='$money_prec', date_deposit=NOW(), user_status='$user_status' where id='$id'";
mysql_query($query) or die(mysql_error());
echo "<font color=\"green\"><b>User отредактирован.</b></font><br><br>";
}
if (isset($_GET["id"]))
{
$id=$_GET["id"];
if ($_GET["option"]=="edit")
{
$tablae = mysql_query("SELECT * FROM tb_users where id='$id'");
$registroe = mysql_fetch_array($tablae);
$registroe["percent"] = ($registroe["money"]/100) ;
?>
<form method="post" action="index.php?op=7">
<b>Редактор пользователя</b><br>
<table>
<tr>
<th width="200">Id:</th><td> <input type="hidden" name="id" value="<?= $registroe["id"] ?>"><?= $registroe["id"] ?><br></td><tr>
<th width="200">Логин:</th> <td> <input type="text" name="username" value="<?= $registroe["username"] ?>"><br></td></tr><tr>
<th width="200">Пароль:</th> <td> <input type="text" name="password" value="<?= $registroe["password"] ?>"><br></td></tr><tr>
<th width="200">Реферал:</th> <td> <input type="text" name="referer" value="<?= $registroe["referer"] ?>"><br></td></tr><tr>
<th width="200">E-mail:</th> <td> <input type="text" name="email" value="<?= $registroe["email"] ?>"><br></td><tr>
<th width="200">Откуда:</th> <td> <input type="text" name="country" value="<?= $registroe["country"] ?>"><br></td></tr>
<th width="200">№ счета:</th> <td> <b><?= $registroe["pemail"] ?></b><br></td><tr>
<th width="200">Рефералов:</th> <td> <input type="text" name="referals" value="<?= $registroe["referals"] ?>"><br></td><tr>
</table>
<b>Редактор аккаунта</b><br>
<table>
<tr>
<th width="200">Процентов:</th><td><b><? echo $row["proc"]; ?></b>$<br></td><tr>
<th width="200">Баланс:</th><td><b><?echo $registroe["money"] + $registroe["percent"] ?></b>$<br></td><tr>
<th width="200">Всего заработано:</th><td><b><?= $registroe["percent"] ?></b>$<br></td><tr>
<th width="200">Всего выплачено:</th><td><b><?= $registroe["paid"] ?></b>$<br></td><tr>
<th width="200">Активный депоз:</th> <td><input type="text" name="money" value="<?= $registroe["money"] ?>">$<br></td><tr>
</table>
<br>
<td colspan='2'><br><fieldset><legend>Служебная информация</legend>
ip адрес при регистрации: <b><?= $registroe["ip"] ?></b><br>
Дата регистрации: <b><?= $registroe["joindate"] ?></b><br>
Дата последнего визита: <b><?= $registroe["lastlogdate"] ?></b><br>
ip адрес последнего входа: <b><?= $registroe["lastiplog"] ?></b><br>
</fieldset></td><tr>
<td><input type="submit" value="сохранить" class="button"></td>
</form>
<?
|
Ошибки не какой не выводит. В админ панели я виже результат 'percent' а в базе нет его, если вам не трудно объясните в чем дело. | |
|
|
|
|
|
|
|
для: Ermak
(23.12.2009 в 08:44)
| | 1. По умолчанию форма передается методом GET. Берем вашу форму, и пропишем вашу переменную в атрибуте action: op=7, полученное от формы выведем на экран:
<?
print_r($_GET);
?>
<FORM ACTION="?op=7">
<INPUT TYPE="text" NAME="as" VALUE="1">
<INPUT TYPE="submit" VALUE="Send">
</FORM>
|
В результате будет получено:
Array ( [as] => 1 )
Теперь изменим метод отправки формы на POST:
<?
print_r($_GET);
?>
<FORM ACTION="?op=7" METHOD="post">
<INPUT TYPE="text" NAME="as" VALUE="1">
<INPUT TYPE="submit" VALUE="Send">
</FORM>
|
В результате будет получено:
Array ( [op] => 7 )
То есть, переменная передаваемая в атрибуте action формы, будет передана на сервер только в том случае, если форма передается методом POST. В вашем же случае она останется "бесхозной".
2. Вы проверяете полученное как методом POST, а форма у вас передается методом GET.
3. Самого поля percent в форме вообще нет.
4. Вывод переменных как <?= $var; ?> будет работать только в том случае, если разрешен короткий РНР-тег - <?. У вас же на странице комбинация и этого и через echo. Это конечно не ошибка как таковая, если разрешен тег короткий, но это уже небрежность.
PS. Виноват. Изначально пропустил метод POST все таки указанный у вас.
Значит - поле. | |
|
|
|