salve.
sto cercando di passare una stringa contenente una query ad un file php che risiede sul server al fine di fargli eseguire la query passata come parametro (query del tipo INSERT INTO tabella (nome) VALUES ('mionome')).
nonostante numerosi tentativi non sono riuscito a venirne a capo.
Codice PHP:
$postUrl=$_SERVER["REQUEST_URI"]; //variabile con cui intercetto la richiesta
if(strpos($postUrl,'storeavalue')){ //controllo che si tratti di una storevalue
$tag = trim($_POST['tag']); //memorizzo i campi tag e value
$query_string = trim($_POST['value']); //fin qui funziona
$query_result=mysql_query($query_string, $connection); //<--qui è l'errore?!!?!?
if ($query_result==FALSE) { mysql_query("INSERT INTO tabella (risultato) VALUES ($query_string)", $connection);}
se vado a verificare nel database al termine del programma php nel campo risultato osservo la stringa $query_result che è pari pari quella che passo tramite il trim($_POST['value']) (cioè INSERT INTO tabella (nome) VALUES ('mionome')); tuttavia il comando mysql_query sembra interpretarla in modo diverso da quanto mi aspetto; se copio il valore della query (memorizzato nel campo risultato) nella scheda SQL del db ed eseguo la query "manualmente" sul db tutto funziona a meraviglia.
mi chiedo:
1. durante il passaggio della query al server vengono aggiunti dei caratteri extra alla stringa? come faccio a visualizzare in fase di debug cosa viene effettivamente passato?
2. la query passata non è di tipo stringa? come faccio a verificarlo? (ho provato anche con un operatore di cast (string)trim($_POST['value']) ma senza risultati!)
3. altri suggerimenti?
grazie