<?php

# $ php -f dbtest.php

$PARAM_nom_bd = '';  // nom de la base de données
$PARAM_utilisateur = ''; // nom d'utilisateur
$PARAM_mot_passe = ''; // mot de passe de l'utilisateur
$PARAM_hote = 'localhost'; //serveur local (redirige vers MYSQL via le port 3306 par défaut)

try {
	$connexion = new PDO('mysql:host='.$PARAM_hote.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
}

catch(PDOException $e) {

	$state = $e->getMessage();
	if(strstr($state, 'SQLSTATE[')) {
		preg_match('/SQLSTATE\[(\w+)\] \[(\w+)\] (.*)/', $state, $matches);
		$err_vers = $matches[1];
		$err_number = $matches[2];
		$err_msg = $matches[3];
	}

	if(!$err_msg)$err_msg=$state;
	die( 'Erreur '.$e->getCode().' : <br />\n'.$err_msg );
}

$test_query = "SHOW TABLES FROM $PARAM_nom_bd";
$resultats = $connexion->query($test_query);
$resultats->setFetchMode(PDO::FETCH_OBJ);

if($resultats)echo "Connect to db '$PARAM_nom_bd' ? OK!<br>";
$tblCnt = 0;

while ($data = $resultats->fetch(PDO::FETCH_NUM)) {
	$tblCnt++;
	$tmp .= "[".$tblCnt."]=>".$data[0]."<br />\n";
}

if ($tblCnt==0) {
  echo "There are no tables<br />\n";
} else {
  echo "There are $tblCnt tables<br />\n";
  echo $tmp."<br />\n";
}

?>
