PHP - przesylanie danych przez POST oraz przechowywanie w bazie danych

0

Witam!
Problem:
Dane przesylane i przechowywane zawieraja w kodowaniu UTF-8 mnostwo znakow specjalnych.

Poszukuje informacji na temat przesylanie danych motoda POST w sposob taki aby zostaly najpierw zakodowane przez Javascript a nastepnie rozkodowane przez PHP (base64 nie spelnia moich oczekiwan), dodatkowo dane musza byc pozniej przechowywane w bazie danych, gdzie musi byc mozliwosc wyszukiwania ich za posrednistwem zapytania %LIKE% dlatego musza byc jak najmniej przeksztalcone, a przynajmniej przeksztalcone w taki stopniu aby rowniez zapytanie moglo byc przeksztalcone do tej samej metody,np.:
zamiast:

<?php include ''; mysqli $q='SELECT... ?>

w bazie bedzie:
<?php include ''; mysqli $q='SELECT... ?>
i jesli podam zapytanie:
<?php
to wynik bedzie pozytywny, lecz jesli bede je przechowywal zakodowane przez base64 to niestety ale nie bedzie mozliwosci takiego wyszukania.

Jesli ktos z Was posiada jakies zrodlo, gdzie mozna konkretnie przeczytac o przechowywaniu i przesylaniu takich danych oraz o bezpieczenstwie ich przechowywania to prosze o podanie takies zrodla

0

A teraz jeszcze raz i powoli.. po co kodujesz je przez js? co chcesz osiągnąć i co do tej pory napisaleś.

0

JavaScript:

function submitFormAjax(id,element) {
    var co = $(element).parents().attr("id");
    document.getElementById(co).style.borderColor = "red";
    var kod = utf8_to_b64(document.getElementsByName("kod-"+id)[0].value);
    var opis = utf8_to_b64(document.getElementsByName("opis-"+id)[0].value);
    var kategoria = document.getElementsByName("kategoria-"+id)[0].value;
    xhr = $.ajax({
        type:"POST",
        url:"zapis.php",
        data:{id:id, 
            kod:kod,
            opis:opis,
            kategoria:kategoria},
        success:function(data) {
        }
}

PHP:

session_start();
if ((isset($_SESSION['zalogowany'])) && ($_SESSION['zalogowany']==true)) {
    require_once "connect.php";
    $connect = @new mysqli($host, $db_user, $db_password, $db_name);
    $id = trim($_POST['id']);
    $kod = unserialize(htmlentities(base64_decode($_POST['kod']), ENT_QUOTES, "UTF-8"));
    $opis = unserialize(htmlentities(base64_decode($_POST['opis']), ENT_QUOTES, "UTF-8"));
    $kategoria = unserialize(trim($_POST['kategoria']));

i w wielu przypadkach kodu z roznymi warintami znakow specjalnych wywolywanie php nie dziala. poza tym na oko widac, ze taka obsluga zapytania jest niebezpieczna.

1 użytkowników online, w tym zalogowanych: 0, gości: 1