Italian a tuo rischio e pericolo

giannimaione

Well-Known Member
Licensed User
Longtime User
codice php su altervista:
B4X:
<?php

$databasehost = "localhost";
$databasename = "my_dbname";
$databaseusername ="my_username";
$databasepassword = ""my_pwd;

$con = mysqli_connect($databasehost,$databaseusername,$databasepassword, $databasename) or die(mysqli_error($con));
mysqli_set_charset ($con , "utf8");
$query = file_get_contents("php://input");
$sth = mysqli_query($con, $query);

if (mysqli_errno($con)) {
   header("HTTP/1.1 500 Internal Server Error");
   echo $query.'\n';
   echo mysqli_error($con);
}
else
{
   $rows = array();
   while($r = mysqli_fetch_assoc($sth)) {
     $rows[] = $r;
   }
   $res = json_encode($rows);
    echo $res;
    mysqli_free_result($sth);
}
mysqli_close($con);
?>
.................
codice B4X:
B4X:
Public Sub ExecuteRemoteQuery(Query As String, JobName As String) As ResumableSub
    Log(Query)
    Dim job As HttpJob
    job.Initialize(JobName, Me)
    job.PostString("https://blablabla.altervista.org/php.php", Query)
    wait for (job) JobDone (job As HttpJob)
    Dim parser As JSONParser
    Dim res As String
    Dim records As List
    records.Initialize
    If job.Success Then
        res = job.GetString
        parser.Initialize(res)
        records = parser.NextArray
    Else
        Log(job.ErrorMessage)
    End If
    job.Release
    Return records
End Sub
quanto è rischioso gestire con il codice PHP e B4X il database sql offerto da altervista ???
quali alternative, per avere un DB condiviso con diversi utenti che possono effettuare le classiche operazioni CRUD?
 
Last edited:

Star-Dust

Expert
Licensed User
Longtime User
Giusta considerazione. Comunque si può rendere più sicuro il codice inserendo oltre alla query dei parametri per la sicurezza.

Ad esempio md5(user+pass+token) o altri metodi di codifica che impediscono a un malintenzionato di replicare l'operazione e danneggiare l'archivio.

Il sistema digest usato dai browser è un buon metodo
 
Top