Il metodo mysql_real_escape_string() blocca la query

Ho la necessità di inserire un mio script ma purtroppo joomla va in errore.

La stringa incriminata è la seguente:

$query_ip = "SELECT * FROM ingressi WHERE ip = '$ipaddress'";

il sistema di joomla risponde con:

Warning: mysql_real_escape_string(): 15 is not a valid MySQL-Link resource in c:\www\j1014\includes\database.php on line 140

praticamente il metodo "mysql_real_escape_string()" non mi permette di passare nella query il carattere ' (apostrofo)

Come posso aggirare il problema? 

Grazie,

ciao.

inviato 8 anni fa
Nando
X 0 X

riporta le righe di codice che hai scritto  :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X
$ipaddress = $_SERVER['REMOTE_ADDR'];
$data = date("Y-m-d");

$conn = connetti();
$query_ip = "SELECT * FROM ingressi WHERE ip = '$ipaddress' AND data = '$data';";
$exeQuery_ip = mysql_query($query_ip,$conn) or die (mysql_error());
if ($record_ip = mysql_fetch_array($exeQuery_ip))
{
   $sql_ip = "INSERT INTO ingressi (data,ora,ip) VALUES (
      NOW(),
      NOW('hh:mm:ss'),
      '$ipaddress'
   );";
   $exeQuery_ip = mysql_query($sql_ip,$conn) or die (mysql_error);
   }
disconnetti($conn);
risposto 8 anni fa
Nando
X 0 X

ma questo codice deve girare all'interno di Joomla?

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

si.

risposto 8 anni fa
Nando
X 0 X

Allora non pui procedere in quel modo, non puoi effettuare una connessione a mysql ed utilizzare direttamente le funzioni mysql per interagire con il database. Devi usare le classi di Joomla per interrogare il DB. Prova a guardare il codice di qualche componente per prendere spunto.

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Non ho ancora controllato il codice joomla ma guardando il phpmyadmin ho notato che fa proprio quello che server a me, anche inserisco solo apici il phpmyadmin li prende e li passa al db senza problemi, ho così dato un'occhiata al codice ma non ci ho capito nulla.  :wallbash:

Qualcuno sa che metodo utilizzano questi di phpMyAdmin ???

risposto 8 anni fa
Nando
X 0 X

Che c'entra phpMyAdmin  con Joomla?

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Mi riferisco a phpMyAdmin perché dando un occhiata al suo codice ho visto che nello realizzare un query utilizza dei metodi che non ho capito. Non c'è la classica query che uno crea.

risposto 8 anni fa
Nando
X 0 X

Se devi scrivere del codice da inserire in Joomla dovresti preoccuparti di come effettuare le query in questo sistema piuttosto che vedere come le lancia phpMyAdmin.

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Tutto risolto, mi è bastato spostare l'include del file di alcune righe più avanti e tutto funziona, all'inizio avevo messo l'include del file subito dopo il tag <head> ed ecco l'errore, adesso che l'ho messo sotto la barra dei menù, proprio dove vado a stampare il risultato del contatore, tutto funziona come deve.

Forse la posizione di dove inserivo il file non centra nulla è ho avuto solo fortuna, ma l'importante è che ho risolto.

Grazie,

:bye:

risposto 8 anni fa
Nando
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda