|
|
|
| Люди, помогите, запутался совсем!
У меня есть таблица в БД
столбцы:
CREATE TABLE `pvp` (
`id` smallint(5) unsigned NOT NULL auto_increment, // номер столбца
`charname1` varchar(30) NOT NULL default '', // первый человек
`level1` varchar(30) NOT NULL default '', // его уровень
`charname2` varchar(30) NOT NULL default '', // второй человек
`level2` varchar(30) NOT NULL default '', //его уровень
`time` smallint(5) unsigned NOT NULL default '0', //время назначаемое самими людьми
`timeid` TIME NOT NULL default '00:00:00', //время когда это дело попадает в БД
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
|
Теперерь мне требуется сделать так, что если поле 2 человека пустое, то выводится один текст, если не пустое поле, то другой текст
function pvp2() {
global $userrow;
$query = doquery("SELECT * FROM {{table}} WHERE id", "pvp");
$page .= "<a href=\"index.php?do=pvp1\">назад</a>";
$page .= "<table width=\"50%\" border=\"0\">\n";
$count = 1;
while ($row = mysql_fetch_array($query)) {
if ($count == 1) {
$page .= "<tr><td>".$row["timeid"]." <b>".$row["charname1"]." [".$row["level1"]."]</b>(таймаут ".$row["time"]." мин.) ".$text."</td><td></td></tr>\n"; $count = 2;
}
else {
$page .= "<tr><td>".$row["timeid"]." <b>".$row["charname1"]." [".$row["level1"]."]</b>(таймаут ".$row["time"]." мин.) ".$text." </td><td></td></tr>\n"; $count = 1; }
}
if (mysql_num_rows($query) == 0) { $page .= "<tr><td><br><br>пусто.</td></tr>\n"; }
$page .= "</tr></table>";
display($page, "");
}
|
$text - это и должен быть текст в конце, взависимости от пустого или не пустого поля...
Как ни пробовал, не выходит...
Подскажие, как объявить эту переменную и засунуть её в текст, в зависимости от того, чем она заполнена?... | |
|
|
|
|
|
|
|
для: Caman
(01.05.2007 в 14:54)
| | Под вторым полем имеется в виду charname1? | |
|
|
|
|
|
|
|
для: cheops
(01.05.2007 в 21:23)
| | с этим разобрался, посидел 4 часа, чуть не лопнул!
Теперь вот такой вопрос, хочу обновить одновременно две таблицы в БД.
Они совсем разные, в одной нужно просто оичстить 2 строки, а в другой нужно вписать в строку 0
Покажите на примере, как это можно сделать.
Я пока сделал так, но вторая таблица не обновляется
function pvp7($id) {
global $userrow;
$query = doquery("UPDATE {{table}} SET charname2='',level2='' WHERE id='$id' LIMIT 1", "pvp1");
header("Location: index.php?do=pvp71","");
}
pvp71($charname2) {
global $userrow;
$query = doquery("SELECT * FROM {{table}} WHERE id='$id' LIMIT 1", "pvp1");
$row = mysql_fetch_array($query);
$query = doquery("UPDATE {{table}} SET pvp='0' WHERE username='".$row["charname2"]."' ", "users");
display("Всё ок! ", "");
|
| |
|
|
|
|
|
|
|
для: Caman
(01.05.2007 в 22:15)
| | У вас функция pvp7 осуществляет редирект, поэтому запросы после неё просто не успевают срабатывать, поставьте редирект после функции display().
PS Под разные вопросы лучше заводить разные темы. | |
|
|
|