Автор оригинала: Romashov
Потом, насколько я понял, ты не делаешь проверку прав.
Допустим через пять лет тебе не захочется, чтобы пользователи могли работать с каким-нибудь полем.
Имхо, лучше сделать на проверку наличия в массиве допустимых полей и вышибать ненужные переменные
Приведи код. Я не прочь подумать.
да, на счет прав - это мысль!
вот собственно код скрипта....правда еще недописанного до конца, но смысл должен быть ясен
PHP:
<?php
include('..............');
$mcon = mysql_connect($host, $login, $passwd) or die(mysql_error());
if($mcon)
{
if(isset($_GET['field1'])&&($_GET['field1']!=''))
{
addsl($_GET); // добавляю слэши
if(isset($_GET['field2'])&&($_GET['field2']!=''))
{
$qr_main = "SELECT * FROM $db.table t WHERE
";
$qrvars = array('field3', 'field4', 'field5', 'field6',..);
//далее проверяю: если переменная пришла, и если не пуста - то добавляю в запрос ...
foreach($qrvars as $key => $val)
{
$qr_main.=(isset($_GET[$val])&&($_GET[$val]!=''))?" t.$val='$_GET[$val]' AND":"";
}
substr($qr_main, 0, -4); //готовый запрос(отезаю AND на "конце")
}
else
{
..................
}
}
else
{
header("Location: ./index.php");
exit;
}
}
?>
-~{}~ 31.03.05 00:41:
Автор оригинала: Фанат
передача id никакого вопроса не представляет.
передаёшь обычным порядком.
вообще, хотелось бы увидеть реальную задачу.
Начнём с того, что данные для изменения таблиц гетом не передают, а передают постом.
это конечный вариант...т.е. пользовательский, т.е. юзер может только просматривать данные, полученные путем запроса...включающего переменные, которые я передаю скрипту, поэтому ни о какой модификации таблиц пока что речи не идет(мне нужно было сразу об этом сказать - моя вина),
далее.....в случае, если я данные предназначены для модификации записей - сначала передаю их постом на скриатец, который собственно и выполяет запрос, а потом делаю header("Location: ./somescript.php") - как и советовали в форуме
-~{}~ 31.03.05 00:46:
Автор оригинала: Мутник
frk
массивы для ленивых?
array[id]
array[name]
array[surname]
это если при посте - то немного более красиво...
ну, а далее...продолжи мысль...если не сложно конечно, plz - каким методом далее передавать эти данные?... - если честно - ни разу не передавал массив POST, и тем более GET-методом, разве что сериализацией и в одной переменной, либо опять же через сессию с сериализацией.....- вот такое было
-~{}~ 31.03.05 00:48:
Автор оригинала: frk
уфф,...тогда остается только использовать псевдонимы, ...как уже мне советовал гражданин
Romashov
-~{}~ 31.03.05 00:22:
хорошо, тогда такой вопрос: если я буду использовать псевдонимы,......ну и в скрипте назначения буду ставить эти переменные в некоторое соответствие с конечными переменными(наименованиями полей таблиц) - может этого и будет достаточно,
но остается вопрос с передачей id?.....хотя как еще если не id?.....
структура таблицы такая:
-----------------
| id | fieldname |
-----------------
id этой таблицы используется в другой как связующее, т.е. другая таблица содержит этот id, - может быть слишком сумбурно все излагаю...сорри
-~{}~ 31.03.05 00:53:
Автор оригинала: Мутник
frk
массивы для ленивых?
array[id]
array[name]
array[surname]
это если при посте - то немного более красиво...
блин, я сам же и ответил на свой вопрос

......сериализация!
-~{}~ 31.03.05 00:57:
спасибо всем, буду конечно признателен, если будут еще советы, попробую......., извиняюсь за кривой код(ну и за плохое выравнивание оного).....не судите строго
-~{}~ 31.03.05 03:31:
Решил задачу наверное слишком просто: после монолога с Мутник-ом пришел к выводу, что нужно использовать массивы, сериализацию оных и сессии для передачи массива - все замечательно работает, только у меня почему то сомнения в этой методике.....наверное по неопытности...время покажет.
Еще раз всем спасибо.