• User Attivo

    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,


  • User

    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'];
    
    

  • User Attivo

    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'];
    
    >```

  • User

    @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()

  • User Attivo

    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? :dull:

    @M4V1 said:

    Invece di usare quella funzione usa mysqli_select_db()


  • User