|
|
|
| Подскажите пожалуйста как сделать чтоб после удаление записи.
например:
у меня 5 записей в базе 'rut'
id1 id2 id3 id4 id5 я удалил id4 и после удаления должно стать вот так теперь id1 id2 id3 id4 а не так
id1 id2 id3 id5 и чтоб после добовление другой записи началось с id5 а не с id6
Подскажите пожалуйста как сформировать такой код. ? | |
|
|
|
|
|
|
|
для: rtland
(01.09.2008 в 00:32)
| | Я изрядно устал, когда последний раз боролся с автором подобной идеи.
Вас не затруднит заглянуть в http://softtime.ru/forum/read.php?id_forum=3&id_theme=57099,
попытаться понять, что там написано, после чего убить в себе напрочь мысль менять у записи первичный ключ? | |
|
|
|
|
|
|
|
для: Trianon
(01.09.2008 в 00:41)
| | Ну я почитал что там написано, конечно не года не понял.
ну я тогда подругому задам вопрос.
вот существуют два запроса один выводит не зависимо какое там стоит значение ID чисто 1.2.3.4 и так далее.
а вот второй выводит именно то значение которое там установлено если 1 то 1 если 120 то 120
вот мне нужен пример именно такого запроса.
просто у меня в форме стоит выборка по кодам и если он отправит запрос 1 а там такого не будет то просто мне выведит NaN .
я надеюсь вы поняли что я хачу. | |
|
|
|
|
|
|
|
для: Trianon
(01.09.2008 в 00:41)
| | Просто у людей возникает скорее всего аналогия БД с обычным массивом (ID -ключ / поле - значение), а должна возникать с ассоциативным массивом, где значение без ключа теряет смысл. | |
|
|
|
|
|
|
|
для: Trianon
(01.09.2008 в 00:41)
| | А нет так не получится.
я вывожу с базы
такие значения 1.34,2.32,1.01,5.34, конечно через $prh=[0, $redw = PRH(); ];
а потом он соединяется $cena=$prh[$tovar];
под значение $tovar подставляется id товара и таким путем происходит выборка.
и когда я посылаю запрос на товар то к этому товару подсоединяется эта цена если id1 то 1.34
а если id2 то 2.32 . а когда я цену с товаром удалил и добавил место них другие цены и товары то они уже записались под ID5 и так далее а у меня там 4 значения получается что при запросе id5 там нет цены. | |
|
|
|
|
|
|
|
для: rtland
(01.09.2008 в 01:25)
| | почему нет?
Есть. Если Вы добавили товар id=5 то и цену для этого товара тоже ж добавили. | |
|
|
|
|
|
|
|
для: Trianon
(01.09.2008 в 01:40)
| | Добавил да .
вот пример:
Первоначально как было.
1.23,2.34,5.46,2.34,
1 2 3 4
я их удалил стали другие цены но в базе данных они уже под id5 и выше это мне прийдется делать так
0,0,0,0,2.46,3.43, и так далее
а мне нужно их сместить или id переписывать чтоб небыло пробелов.
или как то подругому можно?
короче все это выглядит примерно так:
<?
function PRL(){
$q = "SELECT prod FROM system";
$res = mysql_query($q);
while($row = mysql_fetch_array($res)):
$prod = $row["prod"];
echo ("$prod,");
endwhile;
}
function PRH(){
$q = "SELECT pokup FROM system";
$res = mysql_query($q);
while($row = mysql_fetch_array($res)):
$pokup = $row["pokup"];
echo ("$pokup,");
endwhile;
}
?>
<SCRIPT language="JavaScript">
function test() {
if (document.form.sum.value == "0") {alert ("Сумма не должна равнятся нулю");} else
if (document.form.wmid.value.length != "12") {alert ("Неверный номер WMID. Введите его в формате 12 цифр");} else
if (document.form.wmz.value=='') {alert("Не указан номер кошелька");} else
if (!(/^z[0-9]{12}$/i).test(document.form.wmz.value)) {alert ("Неверный номер кошелька. Введите его в формате Z + 12 цифр");} else
if (document.form.email.value=='') {alert ("Не указан eMail");} else
if (!(/^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i).test(document.form.email.value)) {alert ("Не корректный email адрес");} else
if (document.form.log.value == "") {alert ("Не указан логин");} else
if (document.form.comment.value.length > 200) {alert ("Максимальный размер комметария 200 букв.");} else
if (document.form.sale.value == "купить") {document.form.submit();} else
{document.form.submit()}
}
function ChSum(data){
prl=[0,<? $rede = PRH(); ?>]; вот тут выглядит так [0,1.23,2.34,4.32,5.76,];
prh=[0,<? $redw = PRL(); ?>];
if (data.sale.value == "продать")
{
data.itog.value = "Вы получите:";
data.sum.value=data.kol.value*prl[data.syst.value]/1000;
if (data.kol.value < 500) data.sum.value=data.sum.value-0.03;
data.sum.value=Math.round(data.sum.value*100-0.499)/100;
//data.sum.value=data.sum.toFixed(2);
if (data.sum.value < 0) data.sum.value = 0;
}
else
if (data.sale.value == "купить")
{
data.itog.value = "Вы заплатите: ";
data.sum.value=Math.round(data.kol.value*prh[data.syst.value]/10+0.49)/100;
if (data.sum.value < 0) data.sum.value = 0;
}
};
</script>
<FORM name="form" action="send.php" method="post">
<TABLE width="500">
<TBODY>
<TR>
<TD>Вы хотите </TD>
<TD><SELECT onchange=ChSum(this.form) name="sale"> <OPTION
value="продать" selected>продать</OPTION> <OPTION
value="купить">купить</OPTION></SELECT> </TD>
<TD>Ваш WMID :</TD>
<TD><INPUT class="forminput" id="wmid" maxLength="30" name="wmid">
</TD></TR>
<TR>
<TD>Товары </TD>
<TD><SELECT onchange=ChSum(this.form) name="syst" width="50">
<? $res = mysql_query("select * from system order by id asc");
for ($i = 0; $i < mysql_num_rows($res); $i++) {
$id = mysql_result($res, $i, "id");
$syst = mysql_result($res, $i, "syst");
?>
<OPTION value="<? echo $id ?>"selected><? echo $syst ?></OPTION>
<? } ?></SELECT> </TD>
<TD>Ваш WMZ :<span style="color: rgb(255, 0, 0);">*</span></TD>
<TD><INPUT class="forminput" id="wmz" maxLength="30" name="wmz">
</TD></TR>
<TR>
<TD>Количество :<span style="color: rgb(255, 0, 0);">*</span></TD>
<TD><INPUT class="forminput" id="kol" maxLength="20"
onchange=ChSum(this.form) size=11 name="kol"> </TD>
<TD>Ваш e-mail :<span style="color: rgb(255, 0, 0);">*</span></TD>
<TD><INPUT class="forminput" id="email" maxLength="60" name="email">
</TD></TR>
<TR>
<TD><INPUT class="forminput" id="itog" readOnly maxLength="20" size=12 value="Вы получите:" name="itog">
</TD>
<TD><INPUT class="forminput" id="sum" readOnly maxLength="20" size=9 name="sum"></TD>
<TD>Ваше имя :<span style="color: rgb(255, 0, 0);">*</span></TD>
<TD><INPUT class="forminput" id="log" maxLength="50" name="log"> </TD>
<TR>
<TD colSpan=4 height=2>
<CENTER>Комментарий (если необходимо):<BR><TEXTAREA name="comment" rows=3 cols=55 value=""></TEXTAREA>
<BR><INPUT onclick=test(); type="button" value="Отправить заявку" name="button">
</CENTER></TD></TR></TBODY></TABLE></FONT></FORM>
|
вот по этому куску кода можно понять как у меня оно работает.
и что после удаления и добавления уже не чего не работает. | |
|
|
|
|
|
|
|
для: rtland
(01.09.2008 в 02:00)
| | Тетя Ася купила в вашем магазине порошок Лотос, и сохранила себе в избранном ссылку на него, как http://yourshop.com/pid=5, в надежде прикупить у вас еще пачек пять в последствии. У тети Аси кончился порошок и она отправилась в ваш магазин по сохраненной ссылке. Каково было удивление тети Аси, когда вместо порошка на этой странице, она увидела предложение о мужском одеколоне!
В то же время, тетя Ася покупала и у меня порошок Лотос, и также сохранила ссылку на него, как http://myshop.com/pid=125. Но у меня этот порошок больше не продается, поэтому тетя Ася прочла сообщение на моей странице: "Мы весьма сожалеем, но данного товара в магазине нет. Мы можем Вам предложить...".
Вопрос, кого будет материть тетя Ася - вас или меня? | |
|
|
|
|
|
|
|
для: sim5
(01.09.2008 в 07:44)
| | У меня товар один , а производителей много. а ссылку она может сохранить только на главную страницу потому что других нету.
А на главной странице она может место этого товара выбрать другой даже может и лучше.
А у вас в куче всяких ссылок она просто запутается, и даже если тот товар что она покупала уже устарел ей все ровно придется покупать его или тот что вы ей посоветуете.
У каждого человека есть свой выбор. что покупать и у кого.
А я если что задумал то иду до конца, тем более уже все сделал, а когда начал тестировать столкнулся с этой проблемой, а из за этой проблемы придется все делать сначала.
если я был бы супер прогером то проблем бы не каких небыло а так это только второй шедевр моего изобретения. | |
|
|
|
|
|
|
|
для: rtland
(01.09.2008 в 14:03)
| | >А у вас в куче всяких ссылок она просто запутается,
Это вы ошибаетесь милейший, все на главной странице не выставишь. А вот задумка ваша, заполнять удаленные уникальные записи ниже стоящими, это полная профанация. Я не против, идите дальше... | |
|
|
|
|
|
|
|
для: sim5
(01.09.2008 в 14:52)
| | Я сюда не дискутировать пришел. а узнать как составить этот код который будет не уникальные id выводить а просто нумератор строк .
Если вы не знаете то давайте не будем обсуждать мою затею для чего она и что я буду с ней делать.
я ж не буду все секреты своей затеи вам рассказывать чтоб потом вы всем говорили что это я у вас украл. | |
|
|
|
|
|
|
|
для: rtland
(01.09.2008 в 02:00)
| | функции PRL() и PRH() нужно выкинуть.
И написать вместо них функцию, формирующую ассоциативный массив
price = { '1': 1.23, '2': 2.34, '3': 5.46, '4': 2.34 };
|
После чего к ценам обращаться по ключам соответствующих товаров. | |
|
|
|
|
|
|
|
для: Trianon
(01.09.2008 в 11:31)
| | А все разобрался.
Спасибо всем. За помощь. | |
|
|
|