{
    "id": "fb153-bound-input",
    "title": "Сохранить имя с апострофом и поймать пропущенный параметр",
    "columns": [
        "Наблюдение",
        "Результат"
    ],
    "rows": [
        [
            "Сохранённое и найденное имя",
            "О'Коннор"
        ],
        [
            "ID найденного клиента",
            1
        ],
        [
            "Недостающий параметр вернул false",
            true
        ],
        [
            "Предупреждение PHP перехвачено",
            true
        ],
        [
            "Код ошибки сервера при этом",
            0
        ],
        [
            "Совпадений с буквальным x' OR 1=1 --",
            0
        ],
        [
            "Записей после ошибочного вызова",
            2
        ]
    ],
    "checks": {
        "apostrophe_utf8_intact": true,
        "missing_argument_rejected": true,
        "php_warning_captured": true,
        "no_server_error_code": true,
        "literal_not_sql": true,
        "only_valid_rows_saved": true,
        "correct_parameter_position": true,
        "owned_objects_removed": true
    },
    "observations": {
        "saved_clients": [
            {
                "ID": 1,
                "CLIENT_NAME": "О'Коннор",
                "EMAIL": "o.connor@example.test"
            },
            {
                "ID": 2,
                "CLIENT_NAME": "Анна",
                "EMAIL": "anna@example.test"
            }
        ],
        "search_rows": [
            {
                "ID": 1,
                "CLIENT_NAME": "О'Коннор"
            }
        ],
        "literal_search_rows": [],
        "missing_argument": {
            "returned_false": true,
            "php_warning": true,
            "server_code": 0
        },
        "parameter_order": [
            "ID",
            "CLIENT_NAME",
            "EMAIL"
        ],
        "connection_charset": "UTF8",
        "raw_warning_text_published": false
    },
    "runtime": {
        "php": "8.2.35",
        "extension": "3.0.1",
        "server_version": "5.0.4",
        "database": "phpmanual153",
        "transport": "embedded_local_file"
    },
    "owned_objects": [
        {
            "type": "TABLE",
            "name": "FB153_BOUND_52D257C2F1"
        }
    ],
    "removed_objects": [
        {
            "type": "TABLE",
            "name": "FB153_BOUND_52D257C2F1"
        }
    ]
}
