include './libs/db.php';
$y = mysql_query("SELECT `number` FROM `pair`") or die (mysql_error ());
if (mysql_num_rows($y) > 0)
{
while ($p = mysql_fetch_assoc($y))
{
$array[] = $p['number'];
}
}
$min = 1000;
$max = 1010;
$arr_diff = array_diff(range($min, $max), $array);
shuffle($arr_diff);
echo '<select>';
foreach ($arr_diff as $key => $value)
{
echo '<option name="'.$value.'">'.$value.'</option>';
}
echo '</select>';
Некиим хитрым образом перенести в функцию....?
Спустя 3 минуты, 26 секунд (14.06.2011 - 11:00) inpost написал(а):
m4a1fox
в функцию пихаешь лишь то, что будешь вызывать из нескольких мест, и достаточно часто. Если этот код используется в 1 или в 2-х местах на сайте, то смысл вообще?
Всё, что начинается с $min -> отправляешь в фунцию, только echo заменяешь н какую-нибудь переменную, типо $select, и в конце: return $select. В функцию отправляешь $array при вызове.
в функцию пихаешь лишь то, что будешь вызывать из нескольких мест, и достаточно часто. Если этот код используется в 1 или в 2-х местах на сайте, то смысл вообще?
Всё, что начинается с $min -> отправляешь в фунцию, только echo заменяешь н какую-нибудь переменную, типо $select, и в конце: return $select. В функцию отправляешь $array при вызове.
Спустя 4 минуты, 33 секунды (14.06.2011 - 11:05) m4a1fox написал(а):
inpost
Ага! Сейчас попробую... спасибо!
Ага! Сейчас попробую... спасибо!
Спустя 5 минут, 52 секунды (14.06.2011 - 11:11) m4a1fox написал(а):
Поправьте если не прав...
и вызов
function MinMAX ($array)
{
$min = 1000;
$max = 1010;
$arr_diff = array_diff(range($min, $max), $array);
shuffle($arr_diff);
$select = '<select>';
foreach ($arr_diff as $key => $value)
{
$select .= '<option name="'.$value.'">'.$value.'</option>';
}
$select .= '</select>';
return $select;
}
и вызов
include './libs/db.php';
echo '<br />';
$y = mysql_query("SELECT `number` FROM `pair`") or die ("Ошибка - ".mysql_error());
if (mysql_num_rows($y) > 0)
{
while ($p = mysql_fetch_assoc($y))
{
$array[] = $p['number'];
}
}
echo MinMAX($array);
Спустя 43 минуты, 42 секунды (14.06.2011 - 11:54) m4a1fox написал(а):
Господа. А как насчет вот такой функции... подскажите как правильно ее оформить?
function MinMAX ($row, $table, $array = TRUE)
{
$y = mysql_query("SELECT '".$row."' FROM '".$table."'") or die ("Ошибка - ".mysql_error());
if (mysql_num_rows($y) > 0)
{
while ($p = mysql_fetch_assoc($y))
{
$array[] = $p[$row];
}
}
return $array;
$min = 1000;
$max = 1010;
$arr_diff = array_diff(range($min, $max), $array);
shuffle($arr_diff);
$select = '<select>';
foreach ($arr_diff as $key => $value)
{
$select .= '<option name="'.$value.'">'.$value.'</option>';
}
$select .= '</select>';
return $select;
}
Спустя 26 минут, 44 секунды (14.06.2011 - 12:21) m4a1fox написал(а):
Скажите, почему так не получается
function LoadBook()
{
$y = mysql_query("SELECT `number` FROM `pair`") or die ("Ошибка - ".mysql_error());
if (mysql_num_rows($y) > 0)
{
while ($p = mysql_fetch_assoc($y))
{
$array[] = $p['number'];
}
}
return $array;
}
function MinMax ($array = TRUE)
{
global $array;
$min = 1000;
$max = 1010;
$arr_diff = array_diff(range($min, $max), $array);
shuffle($arr_diff);
$select = '<select>';
foreach ($arr_diff as $key => $value)
{
$select .= '<option name="'.$value.'">'.$value.'</option>';
}
$select .= '</select>';
return $select;
}
Спустя 3 минуты, 14 секунд (14.06.2011 - 12:24) sharki написал(а):
Во-первых: Зачем ты указал $array = TRUE ?
Во-вторых: Где сам массив $array? где вызов, или чего не получается?
Во-вторых: Где сам массив $array? где вызов, или чего не получается?

Спустя 6 минут, 30 секунд (14.06.2011 - 12:31) m4a1fox написал(а):
sharki
А если так?
вывод вот так
Впринципе работает... может что-то не так???? Гляньте... может что лишнее?
А если так?
function MinMax ($row, $table)
{
function LoadBook($row, $table)
{
$y = mysql_query("SELECT $row FROM $table") or die ("Ошибка - ".mysql_error());
if (mysql_num_rows($y) > 0)
{
while ($p = mysql_fetch_assoc($y))
{
$array[] = $p[$row];
}
}
return $array;
}
$min = 1000;
$max = 1010;
$arr_diff = array_diff(range($min, $max), LoadBook($row, $table));
shuffle($arr_diff);
$select = '<select>';
foreach ($arr_diff as $key => $value)
{
$select .= '<option name="'.$value.'">'.$value.'</option>';
}
$select .= '</select>';
return $select;
}
вывод вот так
echo MinMax("number", "pair");
Впринципе работает... может что-то не так???? Гляньте... может что лишнее?
Спустя 2 минуты, 45 секунд (14.06.2011 - 12:34) sharki написал(а):
Эту часть лучше вынести отдельно, вдруг что-то другое надо будет сотворить
А функция пусть возвращает return$arr_diff;
$select = '<select>';
foreach ($arr_diff as $key => $value)
{
$select .= '<option name="'.$value.'">'.$value.'</option>';
}
$select .= '</select>';
А функция пусть возвращает return$arr_diff;
Спустя 28 минут, 1 секунда (14.06.2011 - 13:02) m4a1fox написал(а):
sharki
Это вариант но тогда как это применить? Всмысле на вывод?!
Это вариант но тогда как это применить? Всмысле на вывод?!
Спустя 5 минут, 30 секунд (14.06.2011 - 13:07) sharki написал(а):
Допустим есть твоя функция
В виде или где там
потом
function MinMax ($row, $table)
{
function LoadBook($row, $table)
{
$y = mysql_query("SELECT $row FROM $table") or die ("Ошибка - ".mysql_error());
if (mysql_num_rows($y) > 0)
{
while ($p = mysql_fetch_assoc($y))
{
$array[] = $p[$row];
}
}
return $array;
}
$min = 1000;
$max = 1010;
$arr_diff = array_diff(range($min, $max), LoadBook($row, $table));
shuffle($arr_diff);
return $arr_diff;
}
В виде или где там
$arr_diff = MinMax("number", "pair");
$select = '<select>';
foreach ($arr_diff as $key => $value) {
$select .= '<option name="'.$value.'">'.$value.'</option>';
}
$select .= '</select>';
потом
echo $select;
Спустя 2 минуты, 27 секунд (14.06.2011 - 13:10) m4a1fox написал(а):
sharki
Понятно. Спасибо.
Понятно. Спасибо.