|
|
|
| <?php
// Устанавливаем соединение с базой данных
require_once("config.php");
// Формируем SQL-запрос на извлечение информации
$query = "SELECT * FROM tblf";
$tbl = mysql_query($query);
print("<table width=100% border=\"1\">\n");
if(!$tbl) exit(mysql_error());
// Если имеется хоть одна запись - выводим
if(mysql_num_rows($tbl))
{
while($table = mysql_fetch_array($tbl))
{
print("<tr>\n");
print("<td>" . $table['name']."</td>\n");
print("<td>" . $table['tel']."</td>\n");
print("<td>" . $table['lech']."</td>\n");
print("<td>" . $table['rek']."</td>\n");
print("</tr>\n");
}
}
print("</table>\n");
?>
Я слышал о редактировании в форме. Но не могу найти об этом подробной информации.
Не подскажете, заранее благодарен! | |
|
|
|
|
|
|
|
для: helovek
(23.04.2007 в 11:05)
| | Вы имеете ввиду визуальный редактор PhpMyadmin ? | |
|
|
|
|
|
|
|
для: zerocool
(23.04.2007 в 11:43)
| | Нет.
Чтобы непосвященный в MSQL мог редактивовать таблицу MSQL на WEB странице. | |
|
|
|
|
|
|
|
для: helovek
(23.04.2007 в 12:56)
| | Вообщето PhpMyAdmin реально подходит. Не пойму зачем изобретать колесо если оно уже есть. | |
|
|
|
|
|
|
|
для: zerocool
(23.04.2007 в 13:37)
| | Тема такая уже звучала: Редактирование всей футбольной таблицы сразу!!!
Только я в ней не разобрался | |
|
|
|
|
|
|
|
для: helovek
(23.04.2007 в 14:04)
| | Может типа так
<?php
// Устанавливаем соединение с базой данных
require_once("config.php");
if(isset($_POST[move])&&($_POST[move]=="update")){
if(isset($_POST[id])){
$id=$_POST[id];
$name=$_POST[name];
$tel=$_POST[tel];
$lech=$_POST[lech];
$rek=$_POST[rek];
$con=count($id);
for($i=0; $i<$con; $i++){
$query="UPDATE tblf SET name='$name[$i]', tel='$tel[$i]', lech='$lech[$i]', rek='$rek[$i]' WHERE id='$id[$i]'";
$result=mysql_query($query);
}
}
}
// Формируем SQL-запрос на извлечение информации
$query = "SELECT * FROM tblf";
$tbl = mysql_query($query);
print("<table width=100% border=\"1\">\n");
print "<form action=".$_SERVER['PHP_SELF']." method=POST>";
print "<input type=hidden name=move value=update>";
if(!$tbl) exit(mysql_error());
// Если имеется хоть одна запись - выводим
if(mysql_num_rows($tbl))
{
while($table = mysql_fetch_array($tbl))
{
print("<tr>\n");
print("<td><input type=hidden name=id[] value=".$table['id']."></td>\n");
print("<td><input type=text name=name[] value=".$table['name']."></td>\n");
print("<td><input type=text name=tel[] value=".$table['tel']."></td>\n");
print("<td><input type=text name=lech[] value=".$table['lech']."></td>\n");
print("<td><input type=text name=rek[] value=".$table['rek']."></td>\n");
print("</tr>\n");
}
}
print("</table></form>\n");
?>
|
| |
|
|
|
|
|
|
|
для: zerocool
(23.04.2007 в 14:39)
| | <?php
Error_Reporting(E_ALL & ~E_NOTICE);
// Устанавливаем соединение с базой данных
require_once("config.php");
if(isset($_POST[move])&&($_POST[move]=="update")){
if(isset($_POST[id])){
$id=$_POST[id];
$name=$_POST[name];
$tel=$_POST[tel];
$lech=$_POST[lech];
$rek=$_POST[rek];
$con=count($id);
for($i=0; $i<$con; $i++){
$query="UPDATE tblf SET name='$name[$i]', tel='$tel[$i]', lech='$lech[$i]', rek='$rek[$i]' WHERE id='$id[$i]'";
$result=mysql_query($query);
}
}
}
// Формируем SQL-запрос на извлечение информации
$query = "SELECT * FROM tblf";
$tbl = mysql_query($query);
print("<table width=100% border=\"1\">\n");
print "<form action=".$_SERVER['PHP_SELF']." method=POST>";
print "<input type=hidden name=move value=update>";
if(!$tbl) exit(mysql_error());
// Если имеется хоть одна запись - выводим
if(mysql_num_rows($tbl))
{
while($table = mysql_fetch_array($tbl))
{
print("<tr>\n");
print("<td><input type=hidden name=id[] value=".$table['id']."></td>\n");
print("<td><input type=text name=name[] value=".$table['name']."></td>\n");
print("<td><input type=text name=tel[] value=".$table['tel']."></td>\n");
print("<td><input type=text name=lech[] value=".$table['lech']."></td>\n");
print("<td><input type=text name=rek[] value=".$table['rek']."></td>\n");
print("</tr>\n");
}
}
print("</table>\n");
print ("<input type=submit name=sabmit value=Отправить>\n");
print "</form>";
$query="UPDATE tblf SET name = '".$_POST['name']."', tel = '".$_POST['tel']."', lech = '".$_POST['lech']."', rek = '".$_POST['rek']."', WHERE id = ".$_POST['id'];
$mysql_query=mysql_query($query);
if(!$mysql_query) {exit("Ошибка");}
echo"<Meta Http-equiv=\"Refresh\" Content=\"0; Url=otchet.php\">";
?>
Где тут может быть ошибка? | |
|
|
|
|
|
|
|
для: helovek
(23.04.2007 в 15:27)
| | А эти строки для чего нужны?
$query="UPDATE tblf SET name = '".$_POST['name']."', tel = '".$_POST['tel']."', lech = '".$_POST['lech']."', rek = '".$_POST['rek']."', WHERE id = ".$_POST['id'];
$mysql_query=mysql_query($query);
if(!$mysql_query) {exit("Ошибка");}
echo"<Meta Http-equiv=\"Refresh\" Content=\"0; Url=otchet.php\">";
|
| |
|
|
|
|
|
|
|
для: zerocool
(23.04.2007 в 15:37)
| | Да, это я погорячился. Но обработать и перезаписать все равно не выходит
нажимаю submit всё на место. и в базе тоже самое.
Кроме того в форму поступает не вся информация , а только одно первое слово.
С чем бы это могло быть связано? | |
|
|
|
|
|
|
|
для: helovek
(23.04.2007 в 16:08)
| | Замените на этот блок
print("<td><input type=hidden name=id[] value='".$table['id']."'></td>\n");
print("<td><input type=text name=name[] value='".$table['name']."'></td>\n");
print("<td><input type=text name=tel[] value='".$table['tel']."'></td>\n");
print("<td><input type=text name=lech[] value='".$table['lech']."'></td>\n");
print("<td><input type=text name=rek[] value='".$table['rek']."'></td>\n");
|
И у Вас интендификатор строк id есть? | |
|
|
|
|
|
|
|
для: zerocool
(23.04.2007 в 16:17)
| | Здесь погорячились Вы. Потому что менять придется на что-то вроде
print('<td><input type=text name=rek[] value="'.htmlspecialchars($table['rek']).'"></td>'."\r\n");
| и т.п. | |
|
|
|
|
|
|
|
для: zerocool
(23.04.2007 в 16:17)
| | CREATE TABLE tblf (
name text NOT NULL,
tel text NOT NULL,
lech text NOT NULL,
rek text NOT NULL
) TYPE=MyISAM; | |
|
|
|
|
|
|
|
для: helovek
(23.04.2007 в 18:17)
| | первичный ключ у таблицы какой? | |
|
|
|
|
|
|
|
для: Trianon
(23.04.2007 в 18:26)
| | А разве он сам по себе создаётся?
Таблица без id
Не подскажете как создать таблицу c id?
Может у вас найдётся время?Извините, туго
до завтра | |
|
|
|
|
|
|
|
для: helovek
(23.04.2007 в 18:41)
| | Сам он не создается.
типичная MySQL-таблица с автонаращиваемым первичным ключом выглядит так
CREATE TABLE tblf (
id int(11) NOT NULL AUTO_INCREMENT,
name text NOT NULL,
tel text NOT NULL,
lech text NOT NULL,
rek text NOT NULL,
PRIMARY KEY(id)
) TYPE=MyISAM;
Добавить ключ можно таким запросом:
ALTER TABLE `таблица`
ADD `id`
INT( 11 )
NOT NULL
AUTO_INCREMENT
PRIMARY KEY
FIRST
;
|
| |
|
|
|
|
|
|
|
для: Trianon
(23.04.2007 в 19:49)
| | ID добавился, а создать изначально с ID не получается
А так всё хорошо, большое спасибо! | |
|
|
|
|
|
|
|
для: helovek
(24.04.2007 в 12:21)
| | То есть как не получается?
CREATE TABLE `tab1` (
`id` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`fld1` VARCHAR( 20 ) NOT NULL ,
`fld2` VARCHAR( 20 ) NOT NULL
) ENGINE = MYISAM ;
|
| |
|
|
|
|
|
|
|
для: Trianon
(24.04.2007 в 13:02)
| | А так получается | |
|
|
|
|
|
|
|
для: helovek
(24.04.2007 в 13:42)
| | Все правильно, чтобы поле id стало auto_increment нужно задать ему первичный ключ | |
|
|
|
|
|
|
|
для: helovek
(24.04.2007 в 13:42)
| | Так как раньше тоже получается, если запятую поставить в конце строки (после слова auto_increment). | |
|
|
|
|
|
|
|
для: Trianon
(24.04.2007 в 13:57)
| | <?php
Error_Reporting(E_ALL & ~E_NOTICE);
// Устанавливаем соединение с базой данных
require_once("config.php");
if(isset($_POST[move])&&($_POST[move]=="update")){
if(isset($_POST[id])){
$id=$_POST[id];
$name=$_POST[name];
$tel=$_POST[tel];
$lech=$_POST[lech];
$rek=$_POST[rek];
$con=count($id);
for($i=0; $i<$con; $i++){
$query="UPDATE tblf SET name='$name[$i]', tel='$tel[$i]', lech='$lech[$i]', rek='$rek[$i]' WHERE id='$id[$i]'";
$result=mysql_query($query);
}
}
}
// Формируем SQL-запрос на извлечение информации
$query = "SELECT * FROM tblf";
$tbl = mysql_query($query);
print("<table width=100% border=\"1\">\n");
print "<form action=".$_SERVER['PHP_SELF']." method=POST>";
print "<input type=hidden name=move value=update>";
if(!$tbl) exit(mysql_error());
// Если имеется хоть одна запись - выводим
if(mysql_num_rows($tbl))
{
while($table = mysql_fetch_array($tbl))
{
print("<tr>\n");
print("<td><input type=hidden name=id[] value=".$table['id']."></td>\n");
print("<td><input type=text name=name[] value=".$table['name']."></td>\n");
print("<td><input type=text name=tel[] value=".$table['tel']."></td>\n");
print("<td><input type=text name=lech[] value=".$table['lech']."></td>\n");
print("<td><input type=text name=rek[] value=".$table['rek']."></td>\n");
print("</tr>\n");
}
}
print("</table>\n");
print ("<input type=submit name=sabmit value=Отправить>\n");
print "</form>";
?>
Почему же эта форма выводит только первое слово таблицы, хотя меняет данные, если к этому слову или данным дописать что либо? | |
|
|
|
|
|
|
|
для: helovek
(24.04.2007 в 14:07)
| | Потому что Вы не учли замечание в посте (23.04.2007 в 16:25) | |
|
|
|
|
|
|
|
для: Trianon
(24.04.2007 в 14:42)
| | Все учел и большое спасибо! | |
|
|
|