|
|
|
| вот у меня есть например поле name и в нем значение LimP я его при помощи файла извлекаю,помещаю в форму,так что пользователь может его менять...вот,он его поменял,каким должен быть запрос,чтобы переписать поле name со старого значения на ново(то,которое ввел пользователь)...
----------------------------------------------------
заранее благодарен... | |
|
|
|
|
|
|
|
для: LimP
(09.10.2004 в 21:25)
| | поясню,что старое значение сохранять не нужно,его нужно переписать,тоесть удалить а на его место написать новое,которое ввел пользователь,но я это сам,помогите тока с запросом,а то как-то нехочется делать в два,запутаться просто,у меня там много... | |
|
|
|
|
|
|
|
для: LimP
(09.10.2004 в 21:40)
| | Не очень понятно, почему имя извлекается из файла, а после изменения помещается в базу MySQL. Обычно для таких операций используется либо оператор UPDATE или REPLACE, например:
UPDATE base SET name='$name' WHERE name='LimP'
|
Эта запись позволяет обновить таблицу base, для которой имя name = 'LimP'. Новое значение равно $name. | |
|
|
|
|
|
|
|
для: cheops
(09.10.2004 в 22:04)
| | нет,вы просто неправильно поняли,как можно извлечь из файла и поместить в базу?...нет,извлекаю из базы,вывожу в файле в форме,пользователь редактирует и опять на это же место в базу в ту же ячейку и переписываем старое значение...попробую,как вы сказали в предыдущем посте.... там параметр base-это как я понял-название базы??? | |
|
|
|
|
|
|
|
для: LimP
(09.10.2004 в 22:10)
| | Мне кажется точто ты хлчешь с одним запросом не справица надобыдет делать 2 первое которое извлекает из база а второе которое меняет значение | |
|
|
|
|
|
|
|
для: Адоп Акробат
(09.10.2004 в 22:17)
| | да я вот именно это и хочу,тока нехочу делать двумя запросами!!!мона сделать и одним,вопрос хеопсу ,вот у меня код,чета не работает...не вносится в базу,я хоть правильно написал...точнее вносится,но не переписывает а записывает как новое...а нужно переписать старое значение...вот код
<?php
include "../config.php";
$id = $_POST['id'];
$question = $_POST['question'];
$arr1 = $_POST['golos'];
//----------------------------------
$oka1 = "update poll set name='$question' where id_poll='$id';";
$oka = mysql_query($oka1);
$count1 = count($arr);
//----------------------------------
$a=-1;
while ($a != $count1)
{
$a=$a+1;
if ($arr1[$a] != "")
{
$ara = $arr1[$a];
$query_golos = "update golos set name='$ara' where id_poll='$id';";
$ok = mysql_query($query_golos);
}
}
//echo "<meta http-equiv='refresh' content='0;url=index.php'>";
?>
|
| |
|
|
|
|
|
|
|
для: LimP
(09.10.2004 в 22:32)
| | :))) | |
|
|
|
|
|
|
|
для: LimP
(09.10.2004 в 22:32)
| | Здесь бы был очень кстатит дамп базы данных.
PS Такая ситуация возможна если только поле с таким id_poll не существует... Кстати id_poll это уникальное поле? | |
|
|
|
|
|
|
|
для: cheops
(09.10.2004 в 23:20)
| | вот база
create database poll;
CREATE TABLE poll (
id_poll int(10) NOT NULL auto_increment,
name text,
putdate date default NULL,
PRIMARY KEY (id_poll)
) TYPE=MyISAM;
CREATE TABLE golos (
id_golos int(10) NOT NULL auto_increment,
name text,
count int(10) default NULL,
id_poll int(10) default null,
PRIMARY KEY (id_golos)
) TYPE=MyISAM;
CREATE TABLE ip (
id_ip int(10) NOT NULL auto_increment,
ip text,
try int(10) default null,
PRIMARY KEY (id_ip)
) TYPE=MyISAM;
|
в таблице poll id_poll -это первичный ключ а в таблице golos это для учета,к какому блоку относится данный вариант огтвета на голосование... | |
|
|
|
|
|
|
|
для: LimP
(10.10.2004 в 13:19)
| | Хм... ну простейший скрипт с этой базой работает как надо:
<?php
include "../config.php";
$question = "Новое имя";
$id = 1;
$oka1 = "update poll set name='$question' where id_poll=$id";
if(!mysql_query($oka1))
{
echo mysql_error();
}
?>
|
PS Может лучше перебрать $arr1 при помощи foreach? | |
|
|
|
|
|
|
|
для: cheops
(10.10.2004 в 14:03)
| | подскажите как,а то я с foreach плохо дружу :( | |
|
|
|
|
|
|
|
для: LimP
(10.10.2004 в 20:54)
| |
<?php
foreach($arr1 as $ara)
{
if($ara != "")
{
$query_golos = "update golos set name='$ara' where id_poll='$id'";
$ok = mysql_query($query_golos);
}
}
?>
|
| |
|
|
|
|
|
|
|
для: LimP
(10.10.2004 в 20:54)
| | Кстати, получается, что в цикле изменяется только одна запись с id_poll=$id - чего-то не то... | |
|
|
|
|
|
|
|
для: cheops
(10.10.2004 в 21:06)
| | мне нужно чтоб в цикле...пока не кончатся объекты массива обновлять(переписывать) их значения.... | |
|
|
|
|
|
|
|
для: LimP
(11.10.2004 в 13:51)
| | вот,гляньте,я в аттаче прикрепил базу мою,файл-обработчик(его собственно мне и нужно сделать)и файл-введение данных...короче,разберетесь...так вот,мне нужно исправить файл-обработчик editpoll.php...чтобы он переписал значения всего,что там есть...и вопроса и остальных вариантов ответа,вопрос пишется в таблицу poll в колонку name а варианты ответа на голосование пишутся в колонку с таким же названием,тока в таблицу golos...и переписывают свое старое значение... | |
|
|
|
|
|
|
|
для: LimP
(11.10.2004 в 15:35)
| | :))) | |
|
|
|
|
|
|
|
для: LimP
(11.10.2004 в 19:02)
| | :-( | |
|
|
|
|
|
|
|
для: LimP
(11.10.2004 в 15:35)
| | Да закавыка заключалась в трудности передачи первичных ключей из таблицы golos - в этом случае следует указывать индексы массива в HTML-тэге явно. | |
|
|
|
|
|
|
|
для: cheops
(11.10.2004 в 23:45)
| | пасиба ,у вас там много ошибок было,я поисправлял(например,оно не переписывало совсем вопрос блока голосования)короче,я все исправил,все хоккей....тока вот у мя новый небольшой вопрос...как мне проверить,есть ли элемент в таблице??? вот у меня есть ip-аддрес,который мне нужно проверить,если он записан уже в таблице ip в поле ip или нет...как это сделать,а то я уже все перепробовал....и in_array и все что тока можно,неполучается..... | |
|
|
|
|
|
|
|
для: LimP
(12.10.2004 в 21:48)
| | Ну можно просто осуществить запрос поместив в условие WHERE ограничение на записи в которых содержится данных IP-адрес, а потом проверить число возвращённых строк:
<?php
$query = "SELECT * FROM ip WHERE ip = '$ip'";
$tot = mysql_query($query);
if(!$tot)
{
if(mysql_num_rows($tot)>0)
{
echo "Такой IP-адерс уже существует";
exit();
}
}
?>
|
| |
|
|
|