- Home
- Categorie
- Coding e Sistemistica
- PHP
- Php error: Illegal string offset
-
Php error: Illegal string offset
Salve a tutti,
durante l'esecuzione di un cronjob riscontro questi tre errori ridondante:[27-Nov-2016 21:52:44 UTC] PHP Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/byoryrxn/newsite/euroblitz/bo_update.php on line 49 16 10:16:08 UTC] PHP Warning: Illegal string offset 'lat' in /home/byoryrxn/newsite/euroblitz/bo_update.php on line 332 [27-Nov-2016 10:16:08 UTC] PHP Warning: Illegal string offset 'lon' in /home/byoryrxn/newsite/euroblitz/bo_update.php on line 333
Queste le linee di codice "incriminate":
Riga 49:
$sqlcon = mysql_connect($host, $user, $pass);if($sqlcon) { mysql_select_db($db) or die(mysql_error());
Riga 332/333:
foreach ($value as $keyb => $valueb) { $lats[]=$valueb[lat]; $lons[]=$valueb[lon];
Sapreste indicarmi come risolverli?
Grazie mille in anticipo per l'aiuto.
Saluti,
-
Il primo errore è semplice, usi delle funzioni "vecchie" per accedere a mysql usa le librerie mysqli o PDO.
Il secondo errore ti dice che $valueb non ha gli indici lat e lon (che in ogni caso andrebbero richiamati tra virgolette)
foreach ($value as $keyb => $valueb) { $lats[]=$valueb['lat']; $lons[]=$valueb['lon'];
-
Ok fatto tutto ma non riesco a sistemare la funzione appena sotto:
mysql_select_db($db) or die(mysql_error());
ed infatti mi da questo errore:
[29-Nov-2016 00:20:01 UTC] PHP Deprecated: mysql_select_db(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/byoryrxn/newsite/euroblitz/bo_update.php on line 51[29-Nov-2016 00:20:02 UTC] PHP Warning: mysql_select_db(): Access denied for user 'root'@'localhost' (using password: NO) in /home/byoryrxn/newsite/euroblitz/bo_update.php on line 51 [29-Nov-2016 00:20:02 UTC] PHP Warning: mysql_select_db(): A link to the server could not be established in /home/byoryrxn/newsite/euroblitz/bo_update.php on line 51
Grazie mille!
@M4V1 said:
Il primo errore è semplice, usi delle funzioni "vecchie" per accedere a mysql usa le librerie mysqli o PDO.
Il secondo errore ti dice che $valueb non ha gli indici lat e lon (che in ogni caso andrebbero richiamati tra virgolette)
> foreach ($value as $keyb => $valueb) { $lats[]=$valueb['lat']; $lons[]=$valueb['lon']; >```
-
@i_fiorentino said:
Ok fatto tutto ma non riesco a sistemare la funzione appena sotto:
> mysql_select_db($db) or die(mysql_error()); >``` Invece di usare quella funzione usa mysqli_select_db()
-
Fatto, altro errore:
[29-Nov-2016 14:25:01 UTC] PHP Warning: mysqli_select_db() expects exactly 2 parameters, 1 given in
Quale altro parametro vuole?
@M4V1 said:
Invece di usare quella funzione usa mysqli_select_db()
-
C'è la documentazione php.net/manual/en/mysqli.select-db.php