|
|
|
| Есть две таблицы: users и j_vacancy:
CREATE TABLE `j_vacancy` (
`id` int(11) NOT NULL auto_increment,
`job_title` text NOT NULL,
`cat` int(1) NOT NULL default '0',
`gorod` int(1) NOT NULL default '0',
`sex` int(1) NOT NULL default '0',
`study` int(1) NOT NULL default '0',
`expwork` int(1) NOT NULL default '0',
`age_from` text NOT NULL,
`age_before` text NOT NULL,
`zp` text NOT NULL,
`graf` int(1) NOT NULL default '0',
`zan` int(1) NOT NULL default '0',
`text_vacancy` text NOT NULL,
`user` text NOT NULL,
`org` text NOT NULL,
`name` text NOT NULL,
`tel` text NOT NULL,
`email` text NOT NULL,
`show_email` int(1) default '0',
`who` int(1) NOT NULL default '0',
`period` text NOT NULL,
`status` int(1) default '0',
KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
|
CREATE TABLE `users` (
`id` int(11) NOT NULL auto_increment,
`uname` text NOT NULL,
`email` text NOT NULL,
`pass` varchar(50) NOT NULL default '',
`level` tinyint(4) NOT NULL default '3',
`subs` int(1) NOT NULL default '1',
`last_login` text NOT NULL,
`last_ip` text NOT NULL,
`bill_job` int(1) default '0',
`billexpdate` date NOT NULL default '0000-00-00',
KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 PACK_KEYS=0;
|
Нужно при добавлении новой вакансии пользователем, посчитать сумму уже доваленных вакансий данным пользователем (колонка user).
Потом сравнить данную сумму с цифрой (допустим 5), если сумма вакансий > либо = 5, то вывести ошибку, но если у данного пользователя ячейка bill_job = 1 и CURRENT_DATE < billexpdate, то добавить еще одну вакансию.
Кратко: Если пользователь уже добавил 5 вакансий, то больше не добавлять, но если у него колонки bill_job и billexpdate удовлетворяют условиям (они сверху описаны), то добавить еще вакансию. | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 08:31)
| | Никто ничего не посоветует? | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 12:58)
| | Посоветую. Для начала - связать таблицы. А то как-то непонятно. Вроде и первичный ключ в таблице пользователей есть. И ссылок на него нету. | |
|
|
|
|
|
|
|
для: Trianon
(15.11.2006 в 13:03)
| | Приблизительно так:
<?
if (!$bill)
{
$user_id = $s_userid;
$query = "SELECT * FROM j_vacancy WHERE user = '$user_id'";
$req = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$resultc=mysql_query("SELECT SUM(user) AS sum FROM j_vacancy where user = '$row[id]' group by user") or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$rowcat= mysql_fetch_array($resultc);
if (mysql_num_rows($resultc)==0){
print "0";
}
else
{
echo $rowcat['sum']; // Получаем сумму
Сравниваем с цифрой 5 (Как это сделать?). Если в колонки bill_job и billexpdate не удовлетворяют условиям, то выводим ошибку.
$err=1;
$err_txt.="<li class=textBR>вы уже добавили 5 вакансий";
}
else
{
Добавляем вакансию
}
?>
|
Примерно так? | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 13:29)
| | то есть user.id заносится у Вас в j_vacancy.user
тогда почему j_vacancy.user описано как text а не как int(11) ? | |
|
|
|
|
|
|
|
для: Trianon
(15.11.2006 в 13:44)
| | Моя оплошность. Не посмотрел... | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 14:00)
| | Хорошо это исправили, а как сравнить? | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 14:00)
| | запрос, выбирающий число вакансий для указанного пользователя:
$sql = "SELECT COUNT(id) as vacs FROM j_vacancy WHERE user = $user_id ";
|
| |
|
|
|
|
|
|
|
для: Trianon
(15.11.2006 в 14:38)
| | А сравнить с числом 5? | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 16:44)
| |
<?
if (!$bill)
{
$user_id = $s_userid;
$query = "SELECT COUNT(id) as vacs FROM j_vacancy WHERE user = $user_id";
$res = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$vacs = mysql_result($res, 0);
$query = "SELECT (bill_job = 1 AND billexpdate < NOW()) as ok
FROM users WHERE user = $user_id " ;
$res = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
if(!mysql_num_rows($res))
echo "нет такого пользователя";
else
{
$ok = mysql_result($res, 0);
if(!$ok && intval($vacs) < 5)
echo "Лимит вакансий исчерапн";
else
{
/// добавить вакансию.
}
}
}
?>
|
| |
|
|
|
|
|
|
|
для: Trianon
(15.11.2006 в 17:09)
| | Огромное спасибо. ;-)
Сейчас попробую... | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 17:34)
| | Что-то не работает, все равно все добавляет не смотря ни на какие условия... :(
И вот здесь наверное ошибка:
$query = "SELECT (bill_job = 1 AND billexpdate < NOW()) as ok
FROM users WHERE user = $user_id " ;
|
Должно быть так:
$query = "SELECT (bill_job = 1 AND billexpdate < NOW()) as ok
FROM users WHERE id = $user_id " ;
|
Правильно? | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 18:13)
| | в таблице users идентификатор пользователя лежит в каком поле? | |
|
|
|
|
|
|
|
для: Trianon
(15.11.2006 в 18:21)
| | Поле id | |
|
|
|
|
|
|
|
для: kis-kis
(15.11.2006 в 19:29)
| | Да. Тут Вы правы.
В условии проверки времени устаревания я тоже наврал.
$query = "SELECT (bill_job = 1 AND billexpdate >= CURDATE()) as ok
FROM users WHERE id = $user_id " ;
|
| |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 09:49)
| | Вот фрагмент кода, который есть, но он почему-то не работает:
<?
if (!$email)
{
$err=1;
$err_txt.="<li class=textBR>Вы не ввели e-mail";
}
if ((!ereg("^[a-z0-9_\.-]+@([a-z0-9][a-z0-9-]+\.)+[a-z]{2,4}$", $GLOBALS["email"])) && (trim($GLOBALS["email"]) != ''))
{
$err=1;
$err_txt.="<li class=textBR>Некорректный email";
}
if ($bill=="yes")
{
$user_id = $s_userid;
$query = "SELECT COUNT(id) as vacs FROM j_vacancy WHERE user = $user_id";
$res = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$vacs = mysql_result($res, 0);
$query = "SELECT (bill_job = 1 AND billexpdate >= CURRENT_DATE()) as ok
FROM users WHERE id = $user_id " ;
$res = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
if(!mysql_num_rows($res))
{
$err=1;
$err_txt.="<li class=textBR>Пользователь не найден";
}
else
{
$ok = mysql_result($res, 0);
if(!$ok && intval($vacs) < 5)
{
$err=1;
$err_txt.="<li class=textBR>Лимит исчерпан";
}
else
{
if ($err==1)
{
print "<table width='100%' border='0' cellspacing='0' cellpadding='5'><tr>
<td><span class=textB>Ошибки: </span><br><br>$err_txt<br></td></tr></table>";
}
else
{
$query = "SELECT * FROM users WHERE id = '$user_id'";
$req = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$query = "INSERT INTO j_vacancy (user, email) VALUES ('$user_id', '$email')";
$req = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
print "<br><center><span class=textB>Вакансия добавлена</span><br><br>";
}
}
}
}
?>
|
| |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 10:27)
| | И каков отклик?
И, кстати, при каких исходных данных? | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 10:33)
| | >>И, кстати, при каких исходных данных?
Не понял вас?
Все работает, кроме данных условий, даже если у пользователя уже 5 вакансий, то добавляется 6, 7 и т.д. :( | |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 10:54)
| | Что лежит в переменной $vacs? | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 11:23)
| | Очевидно, там должна быть сумма уже добавленных вакансий? Я правельно понял? | |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 11:28)
| | Очевидно, там должно быть число уже имеющихся вакансий, если конечно в запросе нет ошибок.
Что такое сумма вакансий?
Вакансии это что - числа, чтобы их можно было суммировать? | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 11:34)
| | Сумма вакансий это - cумма всех вакансий, в которых поле [user] таблица "j_vacancy" соответствует [$user_id] пользователя. | |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 11:55)
| | Когда я спросил, "Что лежит в переменной $vacs?"
то имел в виду написать
print "<br><center><span class=textB>Вакансия добавлена</span><br><br>";
print "Уже вакансий: $vacs<br>";
| и посмотреть, что получится.
Кроме того, неплохо было бы взглянуть на дамп таблиц.
Если уж не получается разобраться на месте. | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 12:02)
| | Да, count действительно считает правильно.
Вот дамп таблиц:
-- Дамп данных таблицы `j_vacancy`
INSERT INTO `j_vacancy` VALUES (12, 4, 'eee', 37, 1, 1, 1, 1, '23', '34', '2222', 0, 0, '2222', '222', '222', '222 222', 'ee@ee.ty', 1, 1, '31', 0);
INSERT INTO `j_vacancy` VALUES (13, 4, 'www', 37, 1, 1, 1, 1, '22', '22', '2333', 0, 0, 'www', '22', '22', '22', '22@22.ry', 1, 1, '31', 0);
INSERT INTO `j_vacancy` VALUES (14, 4, 'www', 37, 1, 1, 1, 1, '22', '22', '2333', 0, 0, 'www', '22', '22', '22', '22@22.ry', 1, 1, '31', 0);
INSERT INTO `j_vacancy` VALUES (15, 4, 'fff', 37, 1, 1, 1, 1, '45', '54', '4444', 0, 0, '4444', '44', '44', '44', '44@ss.df', 1, 2, '31', 0);
INSERT INTO `j_vacancy` VALUES (16, 4, 'fff', 37, 1, 1, 1, 1, '45', '54', '4444', 0, 0, '4444', '44', '44', '44', '44@ss.df', 1, 2, '31', 0);
INSERT INTO `j_vacancy` VALUES (17, 4, 'fff', 37, 1, 1, 1, 1, '45', '54', '4444', 0, 0, '4444', '44', '44', '44', '44@ss.df', 1, 2, '31', 0);
INSERT INTO `j_vacancy` VALUES (18, 4, '222', 37, 1, 1, 1, 1, '22', '34', '333', 0, 0, '3333', '333', '333', '333', 'test2@test.com', 1, 1, '7', 0);
INSERT INTO `j_vacancy` VALUES (19, 4, 'www', 37, 1, 1, 1, 1, '24', '45', '2222', 0, 0, '2222', '222', '222', '2222', 'test2@test.com', 0, 1, '7', 0);
|
-- Дамп данных таблицы `users`
INSERT INTO `users` VALUES (4, 'test', 'test2@test.com', '6950aac2d7932e1f1a4c3cf6ada1316e', 3, 1, '16.11.2006 12:35:33', '127.0.0.1', 0, '2006-11-10', '', '', '');
|
| |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 12:42)
| | эти строки явно не соответствуют структуре таблиц | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 12:49)
| | Структуру я немного поменял:
Вот:
CREATE TABLE `users` (
`id` int(11) NOT NULL auto_increment,
`uname` text NOT NULL,
`email` text NOT NULL,
`pass` varchar(50) NOT NULL default '',
`level` tinyint(4) NOT NULL default '3',
`subs` int(1) NOT NULL default '1',
`last_login` text NOT NULL,
`last_ip` text NOT NULL,
`bill_job` int(1) default '0',
`billexpdate` date NOT NULL default '0000-00-00',
`billorgname` text NOT NULL,
`billcontname` text NOT NULL,
`billtel` text NOT NULL,
KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 PACK_KEYS=0;
|
и вот:
CREATE TABLE `j_vacancy` (
`id` int(11) NOT NULL auto_increment,
`user` int(11) default '0',
`job_title` text NOT NULL,
`cat` int(1) NOT NULL default '0',
`gorod` int(1) NOT NULL default '0',
`sex` int(1) NOT NULL default '0',
`study` int(1) NOT NULL default '0',
`expwork` int(1) NOT NULL default '0',
`age_from` text NOT NULL,
`age_before` text NOT NULL,
`zp` text NOT NULL,
`graf` int(1) NOT NULL default '0',
`zan` int(1) NOT NULL default '0',
`text_vacancy` text NOT NULL,
`org` text NOT NULL,
`name` text NOT NULL,
`tel` text NOT NULL,
`email` text NOT NULL,
`show_email` int(1) default '0',
`who` int(1) NOT NULL default '0',
`period` text NOT NULL,
`status` int(1) default '0',
KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
|
| |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 12:56)
| | Похоже, ошибка в проверке условия.
if(!($ok && intval($vacs) < 5))
|
| |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 13:11)
| | Да, так работает.
Вакансия не добавляется, но текст ошибки не отображается... Просто экран обновляется и все.
А хотелось бы чтобы было написано: Лимит исчерпан :-( | |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 13:55)
| | В моем варианте - печатается.
А где Вы печатаете содержимое $err_txt? Я не нашел соответствующей строки. | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 14:04)
| | Посмотрите посто №160841, я там код писал еще с проверкой email...
Есть строка:
print "<table width='100%' border='0' cellspacing='0' cellpadding='5'><tr>
<td><span class=textB>Ошибки: </span><br><br>$err_txt<br></td></tr></table>";
|
| |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 14:04)
| | Посмотрите посто №160841, я там код писал еще с проверкой email...
Есть строка:
print "<table width='100%' border='0' cellspacing='0' cellpadding='5'><tr>
<td><span class=textB>Ошибки: </span><br><br>$err_txt<br></td></tr></table>";
|
| |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 14:04)
| | Opera повисла, получилось дублирование постов. | |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 14:18)
| | Он находится в ветви else условного оператора, определяющего ошибку. И поэтому не выполняется. | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 14:22)
| | Все исправил, теперь работает | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 14:22)
| | Хорошо условие проверки кол-ва вакансий - если больше 5, то не добавлять - работает.
А вот условие что если у пользователя bill_job =1 и billexpdate >= CURRENT_DATE() - если у него уже есть 5 вакансий, то все равно добавить еще - не работает. :-(
Всегда пишет, что уже есть 5 вакансий и все, несмотря ни на какие bill_job и billexpdate | |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 15:35)
| | Значит так:
if(!($ok || intval($vacs) < 5))
|
| |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 15:54)
| | Непомогло, тоже самое... :( | |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 16:06)
| | опять же, давайте пример строк таблицы. | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 16:16)
| | Вы имеете ввиду дамп или структуру таблицы (она не изменилась)?
-- Дамп данных таблицы `j_vacancy`
INSERT INTO `j_vacancy` VALUES (12, 4, 'eee', 37, 1, 1, 1, 1, '23', '34', '2222', 0, 0, '2222', '222', '222', '222 222', 'ee@ee.ty', 1, 1, '31', 0);
INSERT INTO `j_vacancy` VALUES (13, 4, 'www', 37, 1, 1, 1, 1, '22', '22', '2333', 0, 0, 'www', '22', '22', '22', '22@22.ry', 1, 1, '31', 0);
INSERT INTO `j_vacancy` VALUES (14, 4, 'www', 37, 1, 1, 1, 1, '22', '22', '2333', 0, 0, 'www', '22', '22', '22', '22@22.ry', 1, 1, '31', 0);
INSERT INTO `j_vacancy` VALUES (15, 4, 'fff', 37, 1, 1, 1, 1, '45', '54', '4444', 0, 0, '4444', '44', '44', '44', '44@ss.df', 1, 2, '31', 0);
INSERT INTO `j_vacancy` VALUES (16, 4, 'fff', 37, 1, 1, 1, 1, '45', '54', '4444', 0, 0, '4444', '44', '44', '44', '44@ss.df', 1, 2, '31', 0);
|
-- Дамп данных таблицы `users`
INSERT INTO `users` VALUES (4, 'test', 'test2@test.com', '6950aac2d7932e1f1a4c3cf6ada1316e', 3, 1, '16.11.2006 15:25:12', '127.0.0.1', 1, '2006-12-20', '', '', '');
|
| |
|
|
|
|
|
|
|
для: kis-kis
(16.11.2006 в 16:24)
| | Вы меня запутали окончательно.
Исходный вариант был правильным.
if(!$ok && intval($vacs) < 5) | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 16:42)
| | Прошу прощения... ;-)
С этим условием не добавляет, пишет что лимит 5 и все...
Давайте сверим код:
<?
if ($bill=="yes")
{
$user_id = $s_userid;
$query = "SELECT COUNT(id) as vacs FROM j_vacancy WHERE user = $user_id";
$res = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$vacs = mysql_result($res, 0);
$query = "SELECT (bill_job = 1 AND billexpdate >= CURRENT_DATE()) as ok
FROM users WHERE id = $s_userid" ;
$res = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
if(!mysql_num_rows($res))
{
$err=1;
$err_txt.="<li class=textBR>Пользователь не найден";
}
else
$ok = mysql_result($res, 0);
if(!$ok && intval($vacs) < 5)
$err=1;
echo "$err_txt<li class=textBR>Лимит исчерпан</a>";
}
else
{
if ($err==1)
{
print "<table width='100%' border='0' cellspacing='0' cellpadding='5'><tr>
<td><span class=textB>Обнаружены ошибки: </span><br><br>$err_txt<br></td></tr></table>";
}
else
{
$user_id = $s_userid;
$query = "SELECT * FROM users WHERE id = '$user_id'";
$req = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$query = "INSERT INTO j_vacancy (job_title, user, cat, gorod, sex, study, expwork, age_from, age_before, zp, graf, zan, text_vacancy,
org, name, tel, email, show_email, who, period)
VALUES ('$job_title', '$user_id', '$cat_job', '$gorod', '$sex', '$study', '$expwork', '$age_from',
'$age_before', '$zp', '$graf', '$zan', '$vacancy', '$org', '$name', '$tel', '$email', '$show_email', '$who', '$period')";
$req = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
print "<br><center><span class=textB>Вакансия № $vacs добавлена.</span>";
}
}
}
?>
|
Все правильно? | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 16:42)
| | До конца не будем доделывать?
Но, все равно спасибо хоть за это! :-) | |
|
|
|
|
|
|
|
для: kis-kis
(17.11.2006 в 11:42)
| |
<?
$err_txt = '';
if(!$email)
$err_txt.="<li class=textBR>Вы не ввели e-mail";
else if ((!ereg("^[a-z0-9_\.-]+@([a-z0-9][a-z0-9-]+\.)+[a-z]{2,4}$", $GLOBALS["email"])) && (trim($GLOBALS["email"]) != ''))
$err_txt.="<li class=textBR>Некорректный email";
if($bill=="yes")
{
$user_id = $s_userid;
$query = "SELECT COUNT(id) as vacs FROM j_vacancy WHERE user = $user_id";
$res = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$vacs = mysql_result($res, 0);
$query = "SELECT (bill_job = 1 AND billexpdate >= CURRENT_DATE()) as ok
FROM users WHERE id = $user_id" ;
$res = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
if(!mysql_num_rows($res))
$err_txt.="<li class=textBR>Пользователь не найден";
else
{
$ok = mysql_result($res, 0);
if(!$ok && intval($vacs) >= 5)
$err_txt.="<li class=textBR>Лимит исчерпан</a>";
}
}
if ($err_txt != '')
print "<table width='100%' border='0' cellspacing='0' cellpadding='5'><tr>
<td><span class=textB>Обнаружены ошибки: </span><br><br>$err_txt<br></td></tr></table>";
else
{
$user_id = $s_userid;
$query = "SELECT * FROM users WHERE id = '$user_id'";
$req = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$query = "INSERT INTO j_vacancy (job_title, user, cat, gorod, sex, study, expwork, age_from, age_before, zp, graf, zan, text_vacancy,
org, name, tel, email, show_email, who, period)
VALUES ('$job_title', '$user_id', '$cat_job', '$gorod', '$sex', '$study', '$expwork', '$age_from',
'$age_before', '$zp', '$graf', '$zan', '$vacancy', '$org', '$name', '$tel', '$email', '$show_email', '$who', '$period')";
$req = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
print "<br><center><span class=textB>Вакансия № $vacs добавлена.</span>";
}
?>
|
| |
|
|
|
|
|
|
|
для: Trianon
(17.11.2006 в 20:52)
| | Можно еще один вопрос?
Как добавить к данным условиям еще одно, что если они выполняются, то в ячейку style таблицы j_vacancy мы добавляем, например - vacbillstyle, иначе добавляем vacstyle.
Спасибо. | |
|
|
|
|
|
|
|
для: kis-kis
(19.11.2006 в 16:20)
| | Что значит "добавить в ячейку"?
Добавить можно строку целиком. Но тогда нужно знать всю строку.
Или ячейку можно изменить. Но тогда нужно знать, в какой строке. | |
|
|
|
|
|
|
|
для: Trianon
(20.11.2006 в 10:41)
| | Таблица j_vacancy
CREATE TABLE `j_vacancy` (
`id` int(11) NOT NULL auto_increment,
`user` int(11) default '0',
`job_title` text NOT NULL,
`cat` int(1) NOT NULL default '0',
`gorod` int(1) NOT NULL default '0',
`sex` int(1) NOT NULL default '0',
`study` int(1) NOT NULL default '0',
`expwork` int(1) NOT NULL default '0',
`age_from` text NOT NULL,
`age_before` text NOT NULL,
`zp` text NOT NULL,
`graf` int(1) NOT NULL default '0',
`zan` int(1) NOT NULL default '0',
`text_vacancy` text NOT NULL,
`org` text NOT NULL,
`name` text NOT NULL,
`tel` text NOT NULL,
`email` text NOT NULL,
`show_email` int(1) default '0',
`who` int(1) NOT NULL default '0',
`period` text NOT NULL,
`date` text NOT NULL,
`style` text NOT NULL,
`status` int(1) default '0',
PRIMARY KEY (`id`),
KEY `cat` (`cat`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=90 ;
|
Мы и будем добавлять строку, просто в таблицу я еще одно поле добавил.
Если условия выполняются то в style добавляем vacbillstyle, если нет то vacstyle. | |
|
|
|
|
|
|
|
для: kis-kis
(20.11.2006 в 12:21)
| | какие условия-то? | |
|
|
|
|
|
|
|
для: Trianon
(20.11.2006 в 13:02)
| |
$query = "SELECT (bill_job = 1 AND billexpdate >= CURRENT_DATE()) as ok
FROM users WHERE id = $user_id" ;
|
| |
|
|
|
|
|
|
|
для: kis-kis
(20.11.2006 в 13:45)
| |
$style = $ok ? 'vacbillstyle', если нет то 'vacstyle';
$query = "INSERT INTO j_vacancy (job_title,...., style, ....
VALUES ('$job_title',....., '$style', ....
|
| |
|
|
|
|
|
|
|
для: Trianon
(20.11.2006 в 13:57)
| | Должно быть так?
$style = $ok ? 'vacbillstyle' : $style = "vacstyle";
|
Если да, то после этого все правильно, style добавляется какой нужен.
Спасибо. | |
|
|
|
|
|
|
|
для: Trianon
(17.11.2006 в 20:52)
| | Можно еще один вопрос?
Как добавить к данным условиям еще одно, что если они выполняются, то в ячейку style таблицы j_vacancy мы добавляем, например - vacbillstyle, иначе добавляем vacstyle.
Спасибо. | |
|
|
|
|
|
|
|
для: Trianon
(16.11.2006 в 16:42)
| | Все работает. Спасибо, даже и не знаю как Вас отблагодарить! :-) | |
|
|
|
|