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

Упростить php код

22.06.2015, 23:39. Показов 424. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, у меня две проблемы:
- как переделать что б при первом запуске отправлялся запрос
- как можно упростить php код

P.S. Демо http://roma062015.esy.es
HTML5
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
26
27
28
29
30
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
 
<img src="2.jpg" id="img_load"  height="420">
<a href="#" name="button1" data-num="1" class="button" onClick="set_mode_view(0);">кнопка</a>
<a href="#" name="button2" data-num="2" class="button" onClick="set_mode_view(1);">кнопка</a>
<a href="#" name="button3" data-num="3" class="button" onClick="set_mode_view(2);">кнопка</a>
<a href="#" name="button4" data-num="4" class="button" onClick="set_mode_view(3);">кнопка</a>
 
<div id="results"></div>
<div id="answer"></div>
 
<script language="javascript" type="text/javascript">
function set_mode_view(id){
    $.ajax({
        type: 'POST',
        url: 'go.php',
        dataType: 'json',
        data:{right:id},
        success: function(data){ 
            $('#img_load').attr('src', data.src);
            $('#results').text(data.validate);
            $('#results').next().text(data.answer);
            $('.button').each(function(i,e){
                $(this).text(data["btn_"+(i+1)]);
            });
        }
    });
 
}
</script>
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
    // Запуск сессии        
    session_start();
    // Проверка правильного ответа
    if($_POST["right"] == $_SESSION['ok']){
        $json_array_1 = array(
            "validate" => "Верно"
        );
    }
    else{
        $json_array_1 = array(
            "validate" => "Не верно"
        );
    }   
    // Подключение библиотеки БД
    include 'lib/safemysql.class.php';
    // Подключение к БД
    $db = new SafeMySQL();
    // Таблица
    $table = "table";
    // Категория
    $category = "cat";
    // Лимит
    $limit = 4;
    // Выполнение запроса  
    $name = $db->getAll("SELECT id, name FROM ?n WHERE category=?s ORDER BY RAND(UNIX_TIMESTAMP(NOW())) LIMIT ?i",$table,$category,$limit);
    // Получаем масив из 4 значений
    $json_array_2 = array(
        "btn_1" => $name[0]['name'],
        "btn_2" => $name[1]['name'],
        "btn_3" => $name[2]['name'],
        "btn_4" => $name[3]['name']
    );
    // Генерируем число от от 1 до 3
    $mtrandrange = mt_rand(0,3); 
    
    $id = $name[$mtrandrange]['id'];
    // Сохраняем ответ в сессию
    $_SESSION['ok'] = $mtrandrange;
        
    $img = "".$id.".jpg";
        
    $json_array_3 = array(
        "src" => $img
    );
    
    $json_array = array_merge($json_array_1, $json_array_2, $json_array_3);
 
    echo json_encode($json_array);
?>
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2015, 23:39
Ответы с готовыми решениями:

Упростить код
Получаю большой список полей которые нужно проверить, писать каждый раз if (empty) и другие вещи не...

Упростить код
Как написать проверку полей поменьше, а то сильно громоздко кажеться if(empty($_POST)) die...

Упростить код
Есть рабочий код: &lt;?php if(isset($_GET)) $id = intval($_GET&gt;0); { $res = mysql_query(&quot;SELECT *...

Упростить небольшой код
Как упростить код? &lt;div class=&quot;test&quot;&gt; &lt;table class=&quot;table table-bordered table-striped&quot;&gt; ...

2
28 / 28 / 8
Регистрация: 23.04.2013
Сообщений: 145
23.06.2015, 01:17 2
- как переделать что б при первом запуске отправлялся запрос


Javascript
1
$(document).ready(set_mode_view(2));
так пойдет?
0
4 / 4 / 2
Регистрация: 20.05.2013
Сообщений: 97
24.06.2015, 10:16 3
PHP можно упростить примерно так, я думаю:
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
    // Запуск сессии        
    session_start();
    // Проверка правильного ответа
    if($_POST["right"] == $_SESSION['ok'])
        $json_array_1 = array("validate" => "Верно");
    else
        $json_array_1 = array("validate" => "Не верно");
       
    // Подключение библиотеки БД
    include 'lib/safemysql.class.php';
    // Подключение к БД
    $db = new SafeMySQL();
    // Таблица
    $table = "table";
    // Категория
    $category = "cat";
    // Лимит
    $limit = 4;
    // Выполнение запроса   
    $name = $db->getAll("SELECT id, name FROM ?n WHERE category=?s ORDER BY RAND(UNIX_TIMESTAMP(NOW())) LIMIT ?i",$table,$category,$limit);
    // Получаем масив из 4 значений
    $json_array_2 = array(
        "btn_1" => $name[0]['name'],
        "btn_2" => $name[1]['name'],
        "btn_3" => $name[2]['name'],
        "btn_4" => $name[3]['name']
    );
    // Генерируем число от от 1 до 3
    $mtrandrange = mt_rand(0,3); 
    
    $id = $name[$mtrandrange]['id'];
    // Сохраняем ответ в сессию
    $_SESSION['ok'] = $mtrandrange;
        
    $img = "".$id.".jpg";
        
    $json_array_3 = array("src" => $img);
    
    $json_array = array_merge($json_array_1, $json_array_2, $json_array_3);
 
    echo json_encode($json_array);
?>
Возможно не сильно густо, но все таки.
0
24.06.2015, 10:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.06.2015, 10:16
Помогаю со студенческими работами здесь

Проверка через массив, упростить код
есть массив и через него идет проверка, интересует как его упростить ...

Выводится php-код в браузер после установки php+apache+mysql
Навеяло отсюда: https://www.cyberforum.ru/php-beginners/thread839975.html Установила по...

Вставить php-условие в html-код, который находится в php-коде
Выводится список из базы данных foreach($callbacklist as $call) { ...

Друзья необходим код php. Формы и файлы в PHP
1. Имеется упорядоченный файл. Вставить в него заданное число таким образом, чтобы упорядоченность...


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

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