[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Соединеие php+html+mysql
Xpund
<FORM action=send.php>
Аккаунт: <INPUT align=center TYPE=text id="acc" SIZE=22 NAME=acc VALUE="Аккаунт"><br>
Персонаж: <INPUT align=center TYPE=text id="pers" SIZE=22 NAME=pers VALUE="Персонаж"><br>
<
TABLE WIDTH="100%" BORDER=1 CELLSPACING=2 CELLPADDING=2>
<
TD ALIGN="left">44413</TD>
<
TD ALIGN="left"><a href=http://ru.wowhead.com/?item=44413 target=_blank>Анжинерский чоппер</a></TD>
<TD ALIGN="left">30</TD>
<
TD ALIGN="left"><INPUT TYPE=checkbox id="id_cost" NAME=44413_30></TD>
</
TABLE>
<
INPUT TYPE=submit VALUE="Заказать">

Кто поможет сделать send.php что бы при нажатии на заказать Аккаунт, Персонаж,
NAME=44413_30(Разное в разных таблицах) попадало всё в базу privet таблицу name

Вот мой вариант
<?
mysql_connect("localhost","root","ascent");
mysql_selct_db("golos");
(!
mysql_query("INSERT INTO name (acc, pers, id_cost) VALUES ('".$_POST['acc']."', '".$_POST['pers']."', '".$_POST['id_cost']."'));
?>

В пхп вообще нешарю не судите строго!



Спустя 36 минут, 27 секунд (1.12.2009 - 21:48) Soldier Ghost написал(а):

<FORM action=send.php>
Аккаунт: <INPUT align=center TYPE=text id="acc" SIZE=22 NAME=acc VALUE="Аккаунт"><br>
Персонаж: <INPUT align=center TYPE=text id="pers" SIZE=22 NAME=pers VALUE="Персонаж"><br>
<TABLE
WIDTH="100%" BORDER=1 CELLSPACING=2 CELLPADDING=2>
<TD
ALIGN="left">44413</TD>
<TD
ALIGN="left"><a href=http://ru.wowhead.com/?item=44413 target=_blank>Анжинерский чоппер</a></TD>
<TD
ALIGN="left">30</TD>
<TD
ALIGN="left"><INPUT TYPE=checkbox id="id_cost" name=id_cost value=44413_30></TD>
</TABLE>
<INPUT
TYPE=submit name=go VALUE="Заказать">



$connect = mysql_connect("localhost","root","ascent") or die("Не удалось соединится");
mysql_selct_db("golos") or die("База не найдена");

if($_POST['go'])
{

$sql_insert = mysql_query("INSERT INTO name (acc, pers, id_cost) VALUES ('".mysql_escape_string($_POST['acc'])."', '".mysql_escape_string($_POST['pers'])."', '".mysql_escape_string($_POST['id_cost'].)"')) or die("Не удалось записать в базу");

if(
$sql_insert)
{
echo "
Запись успешно добавлена";
}

}



Нихрена тебя не понял, но написал что-то blink.gif

Спустя 17 часов, 10 минут, 49 секунд (2.12.2009 - 14:58) Xpund написал(а):
Soldier Ghost
Ща заценим, но за старание спс!

Спустя 8 минут, 29 секунд (2.12.2009 - 15:07) Xpund написал(а):
Редактировал, но незаписалось в базу( Так что прошу ещё кто поможет?

Спустя 6 минут, 22 секунды (2.12.2009 - 15:13) ApuktaChehov написал(а):
Будьте внимательны!!
mysql_query("INSERT INTO name (acc, pers, id_cost) VALUES ('".mysql_escape_string($_POST['acc'])."', '".mysql_escape_string($_POST['pers'])."', '".mysql_escape_string($_POST['id_cost'])."')") or die("Не удалось записать в базу");

Спустя 4 минуты, 55 секунд (2.12.2009 - 15:18) Xpund написал(а):
Это я исправил, но всёравно незаписывает в базу! Мож это можно как то одним вайлос сделать?

Спустя 2 минуты, 15 секунд (2.12.2009 - 15:20) ApuktaChehov написал(а):
Код выложи свой исправленый

Спустя 1 минута, 15 секунд (2.12.2009 - 15:22) Chudik написал(а):
Вот ты принимаеш данные $_POST, но чтобы форма передавала их методом POST я не нашел ни в одной форме

Спустя 5 минут, 58 секунд (2.12.2009 - 15:28) Xpund написал(а):
Тоесть на до сдесь - <form method=post> поставить?

Спустя 51 секунда (2.12.2009 - 15:28) Xpund написал(а):
НЕработает сёравно!

Спустя 17 минут, 54 секунды (2.12.2009 - 15:46) ApuktaChehov написал(а):
Код выложи свой исправленый!!!!!

Спустя 8 минут, 45 секунд (2.12.2009 - 15:55) Xpund написал(а):
<?
$connect = mysql_connect("localhost","root","ascent") or die("Не удалось соединится");
mysql_select_db("golos") or die("База не найдена");

if($_POST['go'])
{

$query = mysql_query("INSERT INTO name (acc, pers, id_cost) VALUES ('".mysql_escape_string($_POST['acc'])."', '".mysql_escape_string($_POST['pers'])."', '".mysql_escape_string($_POST['id_cost'])."')") or die("Не удалось записать в базу");

if($query)

echo "Запись успешно добавлена";
else
echo "Запись недобавлена";

}

?>

Спустя 10 минут, 47 секунд (2.12.2009 - 16:06) ApuktaChehov написал(а):
Вот:
<form method="post" action="send.php">
Аккаунт: <input align="center" type="text" id="acc" size="22" name="acc" value="Аккаунт"><br>
Персонаж: <input align="center" type="text" id="pers" size="22" name="pers" value="Персонаж"><br>
<table
width="100%" border="1" cellspacing="2" cellpadding="2">
<tr>
<td
align="left">44413
</td>
<td
align="left"><a href="http://ru.wowhead.com/?item=44413" target="_blank">Анжинерский чоппер</a>
</td>
<td
align="left">30</td>
<td
align="left"><input type="checkbox" name="id_cost"></td>
</tr>
</table>
<input
type="submit" name="go" value="Заказать">
</form>

$connect = mysql_connect("localhost","root","") or die("Не удалось соединится");
mysql_select_db("golos") or die("База не найдена");
if(isset($_POST['go'])){
if(!isset($_POST['id_cost'])):
$_POST['id_cost'] = "off";
endif;
$query = mysql_query("INSERT INTO name (acc, pers, id_cost) VALUES ('".mysql_escape_string($_POST['acc'])."', '".mysql_escape_string($_POST['pers'])."', '".mysql_escape_string($_POST['id_cost'])."')") or die("Не удалось записать в базу");
if($query)
echo "Запись успешно добавлена";
else
echo "Запись недобавлена";
}


Какие у тебя были ошибки:
Ты некорректно проверял $_POST['go'], это нужно делать c помощью функции isset();. Кроме того в форме вообще не было полей с name="go".
$_POST['id_cost'] как я понял, это твой чекбокс. При установленной голке, в $_POST['id_cost'] попадает "on", а при неустановленной, переменная $_POST['id_cost']вообще не создается.

Спустя 24 минуты, 50 секунд (2.12.2009 - 16:31) Xpund написал(а):
Спасибо! Работает! Ну ещё маленько под себя переделаю! И будет супер!

Спустя 24 минуты, 50 секунд (2.12.2009 - 16:56) ssis написал(а):
вот мой вариант решения

всовуеш такую форму где нужно
<FORM method="POST" action="send.php">
Аккаунт: <INPUT align=center TYPE=text id="acc" SIZE=22 NAME=acc VALUE="Аккаунт"><br>
Персонаж: <INPUT align=center TYPE=text id="pers" SIZE=22 NAME=pers VALUE="Персонаж"><br>
<TABLE
WIDTH="100%" BORDER=1 CELLSPACING=2 CELLPADDING=2>
<TR>
<TD
ALIGN="left">44413</TD>
<TD
ALIGN="left"><a href=http://ru.wowhead.com/?item=44413 target=_blank>Анжинерский чоппер</a></TD>
<TD
ALIGN="left">30</TD>
<TD
ALIGN="left"><INPUT TYPE=checkbox id="id_cost" NAME=44413_30></TD>
</TR>
</TABLE>
<INPUT
TYPE=submit VALUE="Заказать">
</FORM>



а это сообствено твой send.php
<?
$acc = $_POST['acc'];
$pers = $_POST['pers'];
$id_cost = $_POST['id_cost'];

$DB_HOST = "localhost"; //хост базы данных, обычно это localhost но может быть и другое
$DB_NAME = "name_bd"; //имя базы данных
$DB_USER = "login"; //имя пользователя для доступа к базы данных
$DB_PASS = "pass"; //Пароль к базы данных

@mysql_connect($DB_HOST,$DB_USER,$DB_PASS) or die ("Не могу открыть mySQL-соединение.");
@MYSQL_SELECT_DB($DB_NAME) or die ("Не могу выбрать mySQL БД.");

mysql_query("INSERT INTO `name` (acc, pers, id_cost) VALUES('$acc', '$pers', '$id_cost')");

@mysql_close(); //может быть ты забыл закрыть базу данных и поэтому оно не записывается
?>

Спустя 21 минута, 26 секунд (2.12.2009 - 17:17) Chudik написал(а):
Цитата
@mysql_close(); //может быть ты забыл закрыть базу данных и поэтому оно не записывается

ssis, молодца... Из-за того что не закрыл соединение не только может не записывать данные, но и удалить имеющиеся
user posted image

Спустя 12 часов, 55 минут, 36 секунд (3.12.2009 - 06:13) Xpund написал(а):
ssisспсаибо, но уже всё готово, и твой вариант проще мне кажеться!

Спустя 3 часа, 19 минут, 22 секунды (3.12.2009 - 09:32) ApuktaChehov написал(а):
Да, его вариант проще, но без защиты от SQL - инъекций.

Спустя 7 часов, 16 минут, 42 секунды (3.12.2009 - 16:49) Xpund написал(а):
У меня образовалась новая проблема!!! Неподдерживает русские буквы, в базе одни кракозябры!!!

Спустя 35 минут, 32 секунды (3.12.2009 - 17:24) ApuktaChehov написал(а):
Ну, у тебя типичная проблема с кодировкой.
Проверь, у тебя должны совпадать следующие кодировки:

1) Кодировка страницы
2) Кодировка базы данных и таблиц.
3) Кодировка запроса к базе данных.

Лучше используй UTF-8.

Спустя 1 минута, 42 секунды (3.12.2009 - 17:26) Xpund написал(а):
Везде поставил utf сёравно!

Спустя 2 минуты, 44 секунды (3.12.2009 - 17:29) ApuktaChehov написал(а):
Где везде?
Код покажите!

Какова вида кракозябры получаются?

Спустя 10 минут, 31 секунда (3.12.2009 - 17:39) Xpund написал(а):
Вот код:
<html>
<head>
<title>
Бесплатный сервер WoW 3.2.2a FuN и x30. Бесплатно играть в WOW. Система голосования за сервер</title>
</head>
<body>
<center><a
href=index.php>Транспорт</a> <a href=index2.php>Летающие маунты</a> <a href=index.php>Оружее</a></center>
<form
method="post" action="send.php">
Аккаунт: <input align="center" type="text" id="acc" size="22" name="acc" value="Аккаунт"><br>
Персонаж: <input align="center" type="text" id="pers" size="22" name="pers" value="Персонаж"><font color=red>*ВНИМАНИЕ!</font>Персонажи с русскими именами пока немогут получить вознаграждение, только персонажи с английскими именами<br>
<table
width="100%" border="1" cellspacing="2" cellpadding="2">

<tr>
<td
align="left">id предмета
</td>
<td
align="left">Название предмета
</td>
<td
align="left">Стоимость</td>
<td
align="left">Выбрать предмет</td>
</tr>


<tr>
<td
align="left">44413
</td>
<td
align="left"><a href="http://ru.wowhead.com/?item=44413" target="_blank">Анжинерский чоппер</a>
</td>
<td
align="left">30</td>
<td
align="left"><input type="radio" name="id_cost" VALUE="44413_30"></td>
</tr>

<tr>
<td
align="left">41508
</td>
<td
align="left"><a href="http://ru.wowhead.com/?item=41508" target="_blank">Механоцикл</a>
</td>
<td
align="left">30</td>
<td
align="left"><input type="radio" name="id_cost" VALUE="41508_30"></td>
</tr>

<tr>
<td
align="left">47180
</td>
<td
align="left"><a href="http://ru.wowhead.com/?item=47180" target="_blank">Боевой конь Серебряного Авангарда</a>
</td>
<td
align="left">30</td>
<td
align="left"><input type="radio" name="id_cost" VALUE="47180_30"></td>
</tr>

<tr>
<td
align="left">33809
</td>
<td
align="left"><a href="http://ru.wowhead.com/?item=33809" target="_blank">Аманийский боевой медведь</a>
</td>
<td
align="left">30</td>
<td
align="left"><input type="radio" name="id_cost" VALUE="33809_30"></td>
</tr>

</table>
<input
type="submit" name="go" value="Заказать">
</form>
</body>
</html>



Вот send.php
<?
$connect = mysql_connect("localhost","root","ascent") or die("Не удалось соединится");
mysql_select_db("golos") or die("База не найдена");
if(isset($_POST['go'])){
if(!isset($_POST['id_cost'])):
$_POST['id_cost'] = "off";
endif;
$query = mysql_query("INSERT INTO name (acc, pers, id_cost) VALUES ('".mysql_escape_string($_POST['acc'])."', '".mysql_escape_string($_POST['pers'])."', '".mysql_escape_string($_POST['id_cost'])."')") or die("Не удалось записать в базу");
if($query)
echo "Ваш заказ принят, ожидайте, в течении 24 часов вы его получите";
else
echo "Заказ не принят";
}
@mysql_close();
?>


Вот какие кракозябры: АккауÐ

Спустя 5 минут, 8 секунд (3.12.2009 - 17:44) ApuktaChehov написал(а):
Не вижу ни одного указания кодировки.
Между <head> загони:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Перед запросом SQL, но после установки соединения вставь это:

mysql_query("set CHARACTER SET UTF-8");


И еще сравнения полей в SQL должны быть - utf8_general_ci

Спустя 52 минуты, 7 секунд (3.12.2009 - 18:36) Xpund написал(а):
Сёравно кракозябры и в sql тоже постаивл utf8_general_ci

Спустя 1 час, 35 минут, 41 секунда (3.12.2009 - 20:12) Soldier Ghost написал(а):
Сам файл переведи в утф

Спустя 1 час, 24 минуты, 54 секунды (3.12.2009 - 21:37) ApuktaChehov написал(а):
Сделай вот что:
в my.ini(настройки MySQL)

Найди default-character-set, и поставь так же UTF 8.

И вот еще.

Иcправь вот это в коде
mysql_query("set CHARACTER SET UTF-8") or die (mysql_error());


_____________
минус, конечно, иногда полезен, но плюс мне нравиться больше :)
Женский журнал - Жена сказала раскрутить сайт любой ценой (Sorry)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.