2021-03-22 12:20:39 +01:00
< ? php
2021-03-23 20:26:52 +01:00
if ( ! isset ( $site ) )
{
require_once ( " config.inc.php " );
header ( 'Location: ' . $accueil );
}
require_once " config.inc.php " ;
require_once " log.php " ;
2021-03-22 12:20:39 +01:00
$table_prefix = " " ;
class db
{
private $server = " db351634-avionpoeme.sql-pro.online.net " ;
private $port = 3306 ;
private $user = " db120904 " ;
private $passwd = " AvionPoème*DB " ;
private $database = " db351634_avionpoeme " ;
public $connect ;
public $result ;
public $uid ;
public $message ;
public $expeMail ;
public $expeKnown ;
public $expeLang ;
public $destLang ;
public $startLat ;
public $startLon ;
public $startName ;
public $startTime ;
2021-03-25 10:26:40 +01:00
public $startTZ ;
2021-03-22 12:20:39 +01:00
public $destMail ;
public $destLat ;
public $destLon ;
public $destName ;
2021-03-23 20:26:52 +01:00
public $public ;
2021-03-22 12:20:39 +01:00
public $color ;
public $deliveryTime ;
public $deliveryTZ ;
public $deliveryTimeServer ;
function __construct ()
{
$this -> open ();
}
function open ()
{
if ( ! $this -> connect )
{
$this -> connect = new mysqli ( $this -> server , $this -> user , $this -> passwd , $this -> database );
if ( $this -> connect -> connect_errno )
{
log_error ( " Échec de la connexion : => " . $this -> connect -> connect_error . " <br /> " . __file__ . ' ligne ' . __line__ );
return false ;
}
}
$this -> connect -> set_charset ( " utf8 " );
return true ;
}
function close ()
{
$this -> connect -> close ();
$this -> connect = 0 ;
}
function protect ( $string )
{
return $this -> connect -> real_escape_string ( $string );
}
function query ( $string )
{
//log_write( $string );
if ( empty ( $this -> connect ) ) $this -> open ();
$this -> result = $this -> connect -> query ( $string ) ;
if ( $this -> connect -> error ) log_error ( " Échec de la commande query => " . $this -> connect -> error . " <br /> " . __file__ . ' ligne ' . __line__ . " \n " . $string , true , true );
//print_r( $this );
}
2021-03-24 21:26:05 +01:00
function newPlane () //return 0 on error
2021-03-22 12:20:39 +01:00
{
2021-03-23 20:26:52 +01:00
$query = " INSERT INTO avionpoeme VALUES ('0',' " ;
$query .= $this -> protect ( $this -> message ) . " ', ' " ;
$query .= $this -> protect ( $this -> expeMail ) . " ', " ;
$query .= $this -> protect ( $this -> expeKnown ) . " , ' " ;
$query .= $this -> protect ( $this -> expeLang ) . " ', ' " ;
$query .= $this -> protect ( $this -> destLang ) . " ', ' " ;
$query .= $this -> protect ( $this -> startLat ) . " ', ' " ;
$query .= $this -> protect ( $this -> startLon ) . " ', ' " ;
2021-03-25 10:26:40 +01:00
$query .= $this -> protect ( $this -> startName ) . " ', " ;
$query .= " FROM_UNIXTIME( " . $this -> protect ( $this -> startTime ) . " ), ' " ;
$query .= $this -> protect ( $this -> startTZ ) . " ', ' " ;
2021-03-23 20:26:52 +01:00
$query .= $this -> protect ( $this -> destMail ) . " ', ' " ;
$query .= $this -> protect ( $this -> destLat ) . " ', ' " ;
$query .= $this -> protect ( $this -> destLon ) . " ', ' " ;
$query .= $this -> protect ( $this -> destName ) . " ', " ;
$query .= $this -> protect ( $this -> public ) . " , ' " ;
2021-03-25 10:26:40 +01:00
$query .= $this -> protect ( $this -> color ) . " ', " ;
$query .= " FROM_UNIXTIME( " . $this -> protect ( $this -> deliveryTime ) . " ), ' " ;
$query .= $this -> protect ( $this -> deliveryTZ ) . " ', " ;
$query .= " FROM_UNIXTIME( " . $this -> protect ( $this -> deliveryTimeServer ) . " ) " ;
2021-03-22 12:20:39 +01:00
$query .= " ) " ;
2021-03-23 20:26:52 +01:00
print_r ( $this );
$this -> query ( $query );
echo " { 'uid':' " . $this -> connect -> insert_id . " '} " ;
2021-03-22 12:20:39 +01:00
}
2021-03-23 20:26:52 +01:00
function getCurrentPlanes ()
{
2021-03-25 10:26:40 +01:00
$query = " SELECT UNIX_TIMESTAMP(deliveryTime) as deliveryTime, deliveryTZ, destLat, destLon, destName, UNIX_TIMESTAMP(startTime) as startTime, startTZ, startLon, startLat, startName, color FROM avionpoeme WHERE deliveryTimeServer>NOW() AND public='1' " ;
2021-03-24 21:26:05 +01:00
$this -> query ( $query );
$planes = $this -> result -> fetch_all ( MYSQLI_ASSOC );
2021-03-25 10:26:40 +01:00
2021-03-23 20:26:52 +01:00
print json_encode ( $planes );
}
function getAnthology ( $page = 0 )
{
2021-03-24 21:26:05 +01:00
$query = " SELECT COUNT(*) as count FROM avionpoeme WHERE public='1' " ;
$this -> query ( $query );
$result = $this -> result -> fetch_assoc ();
2021-03-25 10:26:40 +01:00
$n_pages = round ( $result [ " count " ] / RESULTS_BY_PAGE + 1 , 0 , PHP_ROUND_HALF_DOWN );
2021-03-24 21:26:05 +01:00
if ( $page <= 0 ) //renvoie le nombre de ligne d'anthologie
2021-03-23 20:26:52 +01:00
{
2021-03-24 21:26:05 +01:00
print '{"nAnthology":"' . $result [ " count " ] . '","nPages":"' . $n_pages . '"}' ;
2021-03-23 20:26:52 +01:00
} else //renvoie les lignes d'anthologie
{
2021-03-24 21:26:05 +01:00
if ( $page > $n_pages ) $page = $n_pages ;
2021-03-25 10:26:40 +01:00
$query = " SELECT deliveryTime, deliveryTZ, destName, startTime, startTZ, startName, message FROM avionpoeme WHERE public='1' LIMIT " . ( $page - 1 ) * RESULTS_BY_PAGE . " , " . RESULTS_BY_PAGE ;
2021-03-24 21:26:05 +01:00
$this -> query ( $query );
$planes = $this -> result -> fetch_all ( MYSQLI_ASSOC );
print json_encode ( $planes , JSON_FORCE_OBJECT );
2021-03-23 20:26:52 +01:00
}
}
2021-03-22 12:20:39 +01:00
}
2021-03-23 20:26:52 +01:00
2021-03-22 12:20:39 +01:00
?>