Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
2 / 3 / 2
Регистрация: 17.05.2013
Сообщений: 403
1

Не могу сделать функцию

20.12.2013, 14:14. Показов 638. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
у меня есть код который формирует селект для выбора года, но вот только я его не могу занести в функцию что бы не засарять шаблон лишней информацией
PHP
1
2
3
4
5
6
    $Year='1930';
    $EndYear='2000';
    while ($Year <= $EndYear ) {
        print('<option value="'.$Year.'">'.$Year.'</option>');
        $Year++;
    }
Так вот я хотел собрать эти данные в массив а потом вывести его, но ничего не вышло, помогите пожалуйста.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.12.2013, 14:14
Ответы с готовыми решениями:

Не могу сделать функцию вывода данных с бд в phpMyAdmin в программе OpenServer
Мной был написан код и созданы таблицы в phpMyAdmin, вроде все верно, но ничего не работало так как...

не могу разобраться как написать функцию сортировки и исправить функцию добавления в стек
#include &lt;iostream&gt; #include&lt;Windows.h&gt; using namespace std; struct NE{ int x; NE...

не могу дописать функцию перевода текста на 2сс,не могу возвращать переведенный текст
void itoa(char str){ int i; char buf; char url; char yn; int x=0; i=0; while(str){ ...

Не могу установить Windows из-за того,что не могу сделать выбор установки
Подскажите, я устанавливаю виндовс XP,с диска,на экране высвечивает загруска с диска С, ниже...

16
85 / 85 / 31
Регистрация: 14.06.2013
Сообщений: 207
20.12.2013, 14:40 2
PHP
1
2
3
4
5
<?php
$years = range( 1930,2000 );
foreach( $years as $year )
    printf( "<option value='%s'>%s</option>\n",$year,$year );
?>
0
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
20.12.2013, 14:46 3
Цитата Сообщение от botstars Посмотреть сообщение
Так вот я хотел собрать эти данные в массив
Так может не нужен массив? А просто
PHP
1
2
for($i = 1930; $i <= 2000; ++$i)
echo '<option value="', $i, '">', $i, '</option>';
0
Rol1k
20.12.2013, 14:54
  #4

Не по теме:

Цитата Сообщение от fa2m Посмотреть сообщение
for($i = 1930; $i <= 2000; ++$i)
echo '<option value="', $i, '">', $i, '</option>';
Вы тоже самое ему написали. Заменив while на for:D

0
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
20.12.2013, 14:55 5
Цитата Сообщение от Rol1k Посмотреть сообщение
Вы тоже самое ему написали. Заменив while на for

Не по теме:

Да я, честно говоря, не совсем и понял, что он хочет )))

0
2 / 3 / 2
Регистрация: 17.05.2013
Сообщений: 403
20.12.2013, 15:57  [ТС] 6
Цитата Сообщение от fa2m Посмотреть сообщение

Не по теме:

Да я, честно говоря, не совсем и понял, что он хочет )))

Мне нужно занести этот код в функцию что бы я мог занести значение выполнения этого цикла в переменную и что бы в будущем я просто подставил данные, например сделать селект от 2000 до 2010. Поставляя разные переменные я буду получать разные селекты.
0
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
20.12.2013, 16:04 7
PHP
1
2
3
4
5
6
function createOption($min, $max) {
$option = '';
for($i = $min; $i <= $max; ++$i)
$option .= '<option value="' . $i . '">' . $i . '</option>';
return $option;
}
1
2 / 3 / 2
Регистрация: 17.05.2013
Сообщений: 403
20.12.2013, 19:45  [ТС] 8
Цитата Сообщение от fa2m Посмотреть сообщение
PHP
1
2
3
4
5
6
function createOption($min, $max) {
$option = '';
for($i = $min; $i <= $max; ++$i)
$option .= '<option value="' . $i . '">' . $i . '</option>';
return $option;
}
спасибо большое

Добавлено через 3 часа 31 минуту
А вот здесь в чем проблема
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function createMonth($post) {
    $option = ''; 
    $select=array(1=>'Да, конечно','Возможно','Нет','Не определился');
    foreach($select as $i=>$key){
        if($post==$i){
            $sel='selected="selected" ';
        }else{
            $sel='';
        }
        $option .= '<option value="' . $i . '" '.$sel.'>' . $key . '</option>'; 
     return $option;
    }
    }   
    
    echo '<select name="">';
 
    $post=3;
  echo createMonth($post); 
 echo'</select>';
0
85 / 85 / 31
Регистрация: 14.06.2013
Сообщений: 207
20.12.2013, 20:40 9
Цитата Сообщение от botstars Посмотреть сообщение
А вот здесь в чем проблема
В теле конструкции foreach стоит выражение return.
Так что foreach делает один проход, и как только встречается return немедленно прекращается выполнение функции createMonth().
И return возвращает, что на тот момент содержит переменная $option.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
function createMonth($post)
{
    $option = '';
    $select = array(
        1 => 'Да, конечно',
        'Возможно',
        'Нет',
        'Не определился'
    );
    foreach ($select as $key => $value) {
        if ($post == $key) {
            $sel = 'selected="selected"';
        } else {
            $sel = '';
        }
        $option .= '<option value="' . $key . '"' . $sel . '>' . $key . '</option>' . PHP_EOL;
    }
    return $option;
}
echo '<select name="">', PHP_EOL;
$post = 3;
echo createMonth($post);
echo '</select>';
?>
1
2 / 3 / 2
Регистрация: 17.05.2013
Сообщений: 403
22.12.2013, 15:51  [ТС] 10
Поскажите как можно достать из функции массив вот скрипт
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$fields = array('skype','icq');
 
 
  $POST = array();
 
foreach ($fields as $field => $key ){
 
  if (!isset($_POST[$field])) {
        $POST[$field] ='';
        }
  else{
     $POST[$field] = $_POST[$field];
        }
}
0
59 / 58 / 16
Регистрация: 09.12.2013
Сообщений: 208
22.12.2013, 16:25 11
Цитата Сообщение от botstars Посмотреть сообщение
Поскажите как можно достать из функции массив
С помощью return
0
2 / 3 / 2
Регистрация: 17.05.2013
Сообщений: 403
22.12.2013, 16:32  [ТС] 12
Цитата Сообщение от 646kapeh064 Посмотреть сообщение
С помощью return
return возвращает пустой массив
0
59 / 58 / 16
Регистрация: 09.12.2013
Сообщений: 208
22.12.2013, 16:34 13
botstars, значит передаешь ему пустой массив. Ищи проблему в коде, а не в return )
0
2 / 3 / 2
Регистрация: 17.05.2013
Сообщений: 403
22.12.2013, 16:48  [ТС] 14
Цитата Сообщение от 646kapeh064 Посмотреть сообщение
botstars, значит передаешь ему пустой массив. Ищи проблему в коде, а не в return )
Код рабочий - я сначала код тестирую а потом пытаюсь его засунуть в функцию.
0
59 / 58 / 16
Регистрация: 09.12.2013
Сообщений: 208
22.12.2013, 17:00 15
PHP
1
2
3
function test() {
   return array("a", "b");
}
Добавлено через 40 секунд
PHP
1
2
3
4
function test() {
   $ret = array("cd", "ef");
   return $ret;
}
0
2 / 3 / 2
Регистрация: 17.05.2013
Сообщений: 403
22.12.2013, 17:28  [ТС] 16
Цитата Сообщение от 646kapeh064 Посмотреть сообщение
PHP
1
2
3
function test() {
   return array("a", "b");
}
Добавлено через 40 секунд
PHP
1
2
3
4
function test() {
   $ret = array("cd", "ef");
   return $ret;
}
А обязательно делать такое условие что бы можно было доставать данные из массива
PHP
1
2
$POST2 = returnPOST($fields);
print_r ($POST2);
Или есть возможность просто выполнить функцию. Просто я попытался вызвать $POST['isq'] пишет что переменной не существует. сейчас я вызываю вот так $POST['isq']
0
59 / 58 / 16
Регистрация: 09.12.2013
Сообщений: 208
22.12.2013, 18:25 17
Цитата Сообщение от botstars Посмотреть сообщение
А обязательно делать такое условие что бы можно было доставать данные из массива
Извини меня конечно, но мне кажется, что ты не понимаешь принципов программирования.
0
22.12.2013, 18:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.12.2013, 18:25
Помогаю со студенческими работами здесь

Приветствую, не могу разобраться с кодом программы и не могу сделать .obj файл
.model tiny; нужно будет получить исполняемый файл формата СОМ .code org 100h start: mov ax,...

Не могу сделать полиморфизм. Не могу до конца понять пример по этому поводу
Есть такая задача: Класс Animal должен быть абстрактным, имеет имя и вес. Класс Reptile имеет...

Сделать функцию ввода элементов, функцию вывода элементов, и функцию обработки
Добрый день форумчане, помогите сделать функцию ввода элементов, функцию вывода элементов, и...

Сделать задачу через функцию (добавить функцию)
#pragma hdrstop #pragma argsused #include &lt;tchar.h&gt; #include &lt;iostream.h&gt; int _tmain(int...

Не очень разбираюсь в VBA , не могу сделать код для это программы.вроде не сложный.но не могу додуматься)
Определить, сколько можно купить толковых, фразеологических и орфографических словарей русского...

Не могу передать функцию в функцию
в строке 39 пишет, необъявленный индетификатор (number), почему, что я сделал не так? смысл...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru