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 10 anni fa
Nando
X 0 X

riporta le righe di codice che hai scritto  :bye:

risposto 10 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 10 anni fa
Nando
X 0 X

ma questo codice deve girare all'interno di Joomla?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

si.

risposto 10 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 10 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 10 anni fa
Nando
X 0 X

Che c'entra phpMyAdmin  con Joomla?

risposto 10 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 10 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 10 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 10 anni fa
Nando
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda