Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SAUVEGARDE D'UNE BASE DE DONNÉE, RESULTAT ENVOYER PAR EMAIL, SUR FTP OU BIEN SAVEGARDER EN LOCAL


Information sur la source

Catégorie :Base de données Classé sous : Base donnees, Mysql, Email, Sauvegarde, FTP Niveau : Initié Date de création : 17/04/2008 Date de mise à jour : 18/04/2008 01:08:48 Vu : 4 564

Note :
Aucune note

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

Description

Ma classe SaveBD() permet de faire des sauvegarder a l'aide de cron. Vous pouvez choisir le type de média voulu, soit un envoie a un courriel, soit dans un répertoir local de votre site, soit sur un site ftp distant.

Prendre note que les fichier .sql son en texte lisible, donc n'oubliez pas de sécurisé le répertoire de destination.
 

Source

  • <?php
  • /*************************************************/
  • /* SAUVEGARDE DE BASE DE DONNEES */
  • /* STRUCTURE ET CONTENU */
  • /* Option d'envoie par email, */
  • /* Option de sauvegarde local, */
  • /* Option de sauvegarde sur ftp distant */
  • /*************************************************/
  • /*
  • utilisation:
  • sauvegarde simple
  • ---> save_db.php?db=nom_de_la_base
  • */
  • class saveBD {
  • const Producteur_nom = "1030";
  • const Producteur_commentaire = "Service de sauvegarde MySql";
  • const Producteur_HTTP = "www.monsite.com";
  • const Producteur_email = "webmaster@monsite.com";
  • const Producteur_version = "1.0";
  • private $sql_export = "";
  • private $ini = array();
  • public function __construct($db,$host="",$user="",$pass="") {
  • $this->ini["db_host"] = !empty($host) ? $host : "localhost";
  • $this->ini["db_user"] = !empty($user) ? $user : "root";
  • $this->ini["db_pass"] = !empty($pass) ? $pass : "";
  • $this->ini["db_name"] = $db;
  • $this->ini["email_adresse"] = "votre@email.com";
  • $this->ini["ftp_url"] = "ftp.monsite.com";
  • $this->ini["ftp_login"] = "user";
  • $this->ini["ftp_pass"] = "password";
  • $this->ini["ftp_filename"] = "Backup_MySql_".$db;
  • $this->ini["file_name"] = "Backup_MySql";
  • $this->dbconnect();
  • $this->sql_export = $this->contenu();
  • }
  • public function __destruct()
  • {
  • @mysql_close();
  • }
  • private function get_table_structure($db, $table)//$db=nom de la base,$table=nom de la table
  • {
  • //CREATE TABLE
  • $result = mysql_db_query($db, "SHOW CREATE TABLE `$table`") or mysql_die();
  • $row = mysql_fetch_array($result);
  • $schema_create = $row[1];
  • $schema_create = str_replace("\n","\r\n",$schema_create).";";
  • return (stripslashes($schema_create));
  • }
  • private function get_table_content($db, $table)//$db=nom de la base,$table=nom de la table
  • {
  • $result = mysql_db_query($db, "SELECT * FROM `$table`") or mysql_die();
  • $i = 0;
  • $search = array("\x00", "\x0a", "\x0d", "\x1a"); //on remplace: NULL, LF, CR
  • $replace = array('\0', '\n', '\r', '\Z');
  • //INSERT INTO
  • $table_list = "(";
  • for($j=0; $j<mysql_num_fields($result);$j++)
  • $table_list .= "`".mysql_field_name($result,$j)."`, ";
  • $table_list = substr($table_list,0,-2);
  • $table_list .= ")";
  • $schema_insert = "INSERT INTO `$table` $table_list VALUES \r\n";
  • //VALUE
  • $value_insert = array();
  • while($row = mysql_fetch_row($result))
  • {
  • $values = array();
  • for($j=0; $j<mysql_num_fields($result);$j++)
  • {
  • if(!isset($row[$j])) {
  • $values[] = "NULL";
  • }
  • elseif($row[$j] != "") {
  • $values[] = "'".str_replace($search, $replace, addslashes($row[$j]))."'";
  • }
  • else {
  • $values[] = " ''";
  • }
  • }
  • $value_insert[] ='(' . implode(', ', $values) . ')';
  • $i++;
  • }
  • $schema_insert = count($value_insert) > 0 ? $schema_insert . implode(",\r\n",$value_insert) .";" : "";
  • return trim($schema_insert)."\r\n";
  • }
  • private function contenu()
  • {
  • $sql_export = "\r\n";
  • $sql_export .= "# --------------------------------------------------------\r\n";
  • $sql_export .= "# -- ".self::Producteur_nom." - ".self::Producteur_commentaire."\r\n";
  • $sql_export .= "# -- Version ".self::Producteur_version."\r\n";
  • $sql_export .= "# -- http://".self::Producteur_HTTP."\r\n";
  • $sql_export .= "# -- \r\n";
  • $sql_export .= "# -- Serveur : ".$this->ini["db_host"]."\r\n";
  • $sql_export .= "# -- Généré le : ". format_date(Date("Y-m-d"))." à ". Date("H:i") ."\r\n";
  • $version_mysql = explode("-", mysql_get_server_info());
  • $sql_export .= "# -- Version de MySql : ". $version_mysql[0] ."\r\n";
  • $sql_export .= "# -- Version de PHP : ".phpversion()."\r\n";
  • $sql_export .= "# -- \r\n";
  • $sql_export .= "# -- Base de donnée : ". $this->ini["db_name"] ."\r\n";
  • $i = 0;
  • while($i < $this->ini["num_tables"])
  • {
  • $table = mysql_tablename($this->ini["tables"], $i);//Lit le nom de la table qui contient le champs spécifié
  • $sql_export .= "# --------------------------------------------------------\r\n";
  • $sql_export .= "\r\n";
  • $sql_export .= "# -- \r\n";
  • $sql_export .= "# -- Structure de la table `".$table."`\r\n";
  • $sql_export .= "# -- \r\n";
  • $sql_export .= "\r\n";
  • $sql_export .= $this->get_table_structure($this->ini["db_name"], $table)."\r\n\r\n";
  • $sql_export .= "# -- \r\n";
  • $sql_export .= "# -- Contenu de la table `".$table."`\r\n";
  • $sql_export .= "# -- \r\n";
  • $sql_export .= "\r\n";
  • $sql_export .= $this->get_table_content($this->ini["db_name"], $table);
  • $i++;
  • }
  • return $sql_export;
  • }
  • //Connexion à la base de donnée
  • private function dbconnect() {
  • @set_time_limit(600);
  • @mysql_connect($this->ini["db_host"],$this->ini["db_user"],$this->ini["db_pass"])
  • or die("Impossible de se connecter - Problème sur le 'Hostname' ou sur le 'User' ou sur le 'Password'");
  • @mysql_select_db($this->ini["db_name"])
  • or die("Impossible de se connecter à la base ou nom de base inconnu");
  • header("Expires: 0");
  • $this->ini["tables"] = mysql_list_tables($this->ini["db_name"]);//Liste les tables d'une base de données.
  • $this->ini["num_tables"] = mysql_num_rows($this->ini["tables"]);//Retourne le nombre de lignes d'un résultat
  • }
  • //Imprime à l'écrant le contenue pour la création de la BD
  • public function print_db()
  • {
  • return str_replace("\r\n","<BR>",$this->sql_export);
  • }
  • //envoie un email avec le fichier joint
  • public function confirme_email()
  • {
  • //Sujet du courriel
  • $sujet = Producteur_commentaire." le ".date("d/m/Y");
  • //Entete du courriel
  • $boundary = '-----='.md5(uniqid(rand()));
  • $headers = "From: ".Producteur_nom."<".Producteur_email.">\n";
  • $headers .= "MIME-Version: 1.0\n";
  • $headers .= "Content-Type: multipart/mixed;";
  • $headers .= " boundary=\"----=".$boundary."\"\n\n";
  • //Ajoute le message au courriel
  • $message = "------=".$boundary."\n";
  • $message .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
  • $message .= "Content-Transfer-Encoding: 32bit\n\n";
  • $message .= "
  • Techno-Vie - Service de sauvegarde mensuelle de votre base de donnée
  • ";
  • $message .= "\n\n";
  • //Ajoute la pièce jointe
  • $attachement = "------=".$boundary."\n";
  • $attachement .= "Content-Type: text/plain; name=\"Backup_MySql_aprmq_".date("Ymd-Hi").".sql\"\n";
  • $attachement .= "Content-Transfer-Encoding: base64\n";
  • $attachement .= "Content-Disposition: attachment; filename=\"Backup_MySql_aprmq_".date("Ymd-Hi").".sql\"\n\n";
  • $attachement .= chunk_split(base64_encode($this->sql_export));
  • mail($this->ini["email_adresse"],$sujet,$message.$attachement,$headers);
  • }
  • //save le fichier sur le serveur
  • public function save_file($file="")
  • {
  • $this->ini["file_name"] = empty($file) ? $this->ini["file_name"] : $file;
  • if (!$handle = fopen($this->ini["file_name"].'.sql', 'w'))
  • echo('Impossible d\'ouvrir en écriture le fichier sql : '.$this->ini["file_name"].".sql\n");
  • if (fwrite($handle, $this->sql_export) == FALSE)
  • echo('Erreur d\'exportation de la base '.$this->ini["db_name"]."\n");
  • fclose($handle);
  • }
  • //save le fichier sur un serveur externe
  • public function save_ftp($url="",$login="",$pwd="",$file="")
  • {
  • $this->ini["ftp_url"] = empty($url) ? $this->ini["ftp_url"] : $url;
  • $this->ini["ftp_login"] = empty($login) ? $this->ini["ftp_login"] : $login;
  • $this->ini["ftp_pass"] = empty($pwd) ? $this->ini["ftp_pass"] : $pwd;
  • $this->ini["ftp_filename"] = empty($file) ? $this->ini["ftp_filename"] : $file;
  • $conn_id = ftp_connect($this->ini["ftp_url"]);
  • // Identification avec un nom d'utilisateur et un mot de passe
  • $login_result = ftp_login($conn_id, $this->ini["ftp_login"], $this->ini["ftp_pass"]);
  • // Efface l'ancien fichier
  • $del_result = ftp_delete($conn_id,$this->ini["ftp_filename"].".sql");
  • // Fermeture de la connexion et du pointeur de fichier
  • ftp_close($conn_id);
  • $ftp = "ftp://".$this->ini["ftp_login"].":".$this->ini["ftp_pass"]."@".$this->ini["ftp_url"]."/".$this->ini["ftp_filename"].".sql";
  • $handle = fopen($ftp, "w") or die("FTP - Impossible d'ouvrir en écriture le fichier : ".$this->ini["file_name"].".sql\n");
  • if(fwrite($handle, $this->sql_export) == FALSE)
  • {
  • echo "Erreur d'exportation de la base ".$this->ini["db_name"]."\n";
  • }
  • fclose($handle);
  • }
  • }
  • /*************************************
  • * Variable pour des dates
  • *************************************/
  • define("VAR_JAN","Janvier");
  • define("VAR_FEV","Février");
  • define("VAR_MAR","Mars");
  • define("VAR_AVR","Avril");
  • define("VAR_MAI","Mai");
  • define("VAR_JUN","Juin");
  • define("VAR_JUI","Juillet");
  • define("VAR_AOU","Août");
  • define("VAR_SEP","Septembre");
  • define("VAR_OCT","Octobre");
  • define("VAR_NOV","Novembre");
  • define("VAR_DEC","Décembre");
  • function format_date($date) {
  • $mois = array(VAR_JAN, VAR_FEV, VAR_MAR, VAR_AVR, VAR_MAI, VAR_JUN, VAR_JUI, VAR_AOU, VAR_SEP, VAR_OCT, VAR_NOV, VAR_DEC);
  • $jour = strftime("%d", strtotime($date));
  • $mois2 = intval(strftime("%m", strtotime($date))) -1;
  • $mois2 = $mois[$mois2];
  • $annee = strftime("%Y", strtotime($date));
  • $date = $jour." ".$mois2.", ".$annee;
  • return $date;
  • }
  • /*************************************************/
  • /* Programme principal */
  • /*************************************************/
  • $DB = new saveBD($_GET["db"]);
  • $DB->print_db();
  • //$DB->save_ftp();
  • //$DB->save_file();
  • //$DB->confirme_email();
  • ?>
<?php


/*************************************************/
/*         SAUVEGARDE DE BASE DE DONNEES         */
/*             STRUCTURE ET CONTENU              */
/*          Option d'envoie par email, 	         */
/*	    Option de sauvegarde local, 	 */
/*	 Option de sauvegarde sur ftp distant	 */
/*************************************************/

/*
utilisation:
sauvegarde simple
--->	save_db.php?db=nom_de_la_base
*/

class saveBD {
	
	const Producteur_nom = "1030";
	const Producteur_commentaire = "Service de sauvegarde MySql";
	const Producteur_HTTP = "www.monsite.com";
	const Producteur_email = "webmaster@monsite.com";
	const Producteur_version = "1.0";
		
	private $sql_export = "";
	private $ini = array();
	
	public function __construct($db,$host="",$user="",$pass="") {
		$this->ini["db_host"] = !empty($host) ? $host : "localhost";
		$this->ini["db_user"] = !empty($user) ? $user : "root";
		$this->ini["db_pass"] = !empty($pass) ? $pass : "";
		$this->ini["db_name"] = $db;
		
		$this->ini["email_adresse"] = "votre@email.com";
		
		$this->ini["ftp_url"] = "ftp.monsite.com";
		$this->ini["ftp_login"] = "user";
		$this->ini["ftp_pass"] = "password";
		$this->ini["ftp_filename"] = "Backup_MySql_".$db;
		
		$this->ini["file_name"] = "Backup_MySql";
		
		$this->dbconnect();
		$this->sql_export = $this->contenu();
	}
	public function __destruct() 
	{
		@mysql_close();
	}
	private function get_table_structure($db, $table)//$db=nom de la base,$table=nom de la table
	{
		//CREATE TABLE
		$result = mysql_db_query($db, "SHOW CREATE TABLE `$table`") or mysql_die();
		$row = mysql_fetch_array($result);
		$schema_create = $row[1];
		
		$schema_create = str_replace("\n","\r\n",$schema_create).";";
		return (stripslashes($schema_create));
	}
	
	private function get_table_content($db, $table)//$db=nom de la base,$table=nom de la table
	{
		$result = mysql_db_query($db, "SELECT * FROM `$table`") or mysql_die();
		$i = 0;
		$search       = array("\x00", "\x0a", "\x0d", "\x1a"); //on remplace: NULL, LF, CR
		$replace      = array('\0', '\n', '\r', '\Z');
		
		//INSERT INTO
		$table_list = "(";
		for($j=0; $j<mysql_num_fields($result);$j++)
			$table_list .= "`".mysql_field_name($result,$j)."`, ";
	
		$table_list = substr($table_list,0,-2);
		$table_list .= ")";
	
		$schema_insert = "INSERT INTO `$table` $table_list VALUES \r\n";
		
		//VALUE	
		
		$value_insert = array();
		while($row = mysql_fetch_row($result))
		{
			$values = array();
			for($j=0; $j<mysql_num_fields($result);$j++)
			{
				
				if(!isset($row[$j])) {
					$values[] = "NULL";
				}
				elseif($row[$j] != "") {
					$values[] = "'".str_replace($search, $replace, addslashes($row[$j]))."'";
				}
				else {
					$values[] = " ''";
				}
			}
			$value_insert[] ='(' . implode(', ', $values) . ')';
			$i++;
		}
		
		$schema_insert = count($value_insert) > 0 ? $schema_insert . implode(",\r\n",$value_insert) .";" : "";
		
		return trim($schema_insert)."\r\n";
	}
	private function contenu()
	{
		$sql_export = "\r\n";
		$sql_export .= "# --------------------------------------------------------\r\n";
		$sql_export .= "# -- ".self::Producteur_nom." - ".self::Producteur_commentaire."\r\n";
		$sql_export .= "# -- Version ".self::Producteur_version."\r\n";
		$sql_export .= "# -- http://".self::Producteur_HTTP."\r\n";
		$sql_export .= "# -- \r\n";
		$sql_export .= "# -- Serveur : ".$this->ini["db_host"]."\r\n";
		$sql_export .= "# -- Généré le : ". format_date(Date("Y-m-d"))." à ".  Date("H:i") ."\r\n";
		$version_mysql = explode("-", mysql_get_server_info());
		$sql_export .= "# -- Version de MySql : ". $version_mysql[0] ."\r\n";
		$sql_export .= "# -- Version de PHP : ".phpversion()."\r\n";
		$sql_export .= "# -- \r\n";
		$sql_export .= "# -- Base de donnée : ". $this->ini["db_name"] ."\r\n";
		
		$i = 0;
		while($i < $this->ini["num_tables"])
		{
			$table = mysql_tablename($this->ini["tables"], $i);//Lit le nom de la table qui contient le champs spécifié
			
			$sql_export .= "# --------------------------------------------------------\r\n";
			$sql_export .= "\r\n";
			$sql_export .= "# -- \r\n";
			$sql_export .= "# -- Structure de la table `".$table."`\r\n";
			$sql_export .= "# -- \r\n";
			$sql_export .= "\r\n";
			$sql_export .= $this->get_table_structure($this->ini["db_name"], $table)."\r\n\r\n";
	
			$sql_export .= "# -- \r\n";
			$sql_export .= "# -- Contenu de la table `".$table."`\r\n";
			$sql_export .= "# -- \r\n";
			$sql_export .= "\r\n";
			$sql_export .= $this->get_table_content($this->ini["db_name"], $table);
	
			$i++;
	
		}
		return $sql_export;
	}
	//Connexion à la base de donnée
	private function dbconnect() {

		@set_time_limit(600);
		@mysql_connect($this->ini["db_host"],$this->ini["db_user"],$this->ini["db_pass"])
		or die("Impossible de se connecter - Problème sur le 'Hostname' ou sur le 'User' ou sur le 'Password'");
		@mysql_select_db($this->ini["db_name"])
		or die("Impossible de se connecter à la base ou nom de base inconnu");
		
		header("Expires: 0");
		
		$this->ini["tables"] = mysql_list_tables($this->ini["db_name"]);//Liste les tables d'une base de données.
		$this->ini["num_tables"] = mysql_num_rows($this->ini["tables"]);//Retourne le nombre de lignes d'un résultat
	}
	//Imprime à l'écrant le contenue pour la création de la BD
	public function print_db()
	{
		return str_replace("\r\n","<BR>",$this->sql_export);
	}
	//envoie un email avec le fichier joint
	public function confirme_email()
	{
	//Sujet du courriel
		$sujet = Producteur_commentaire." le ".date("d/m/Y");
		
	//Entete du courriel
		$boundary = '-----='.md5(uniqid(rand()));
		$headers  = "From: ".Producteur_nom."<".Producteur_email.">\n";		
		$headers .= "MIME-Version: 1.0\n";
		$headers .= "Content-Type: multipart/mixed;";
		$headers .= " boundary=\"----=".$boundary."\"\n\n";
		
		
	//Ajoute le message au courriel
		$message = "------=".$boundary."\n";
	   	$message .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
	   	$message .= "Content-Transfer-Encoding: 32bit\n\n";
	   	$message .= "
		Techno-Vie - Service de sauvegarde mensuelle de votre base de donnée
		";
	   	$message .= "\n\n";
   
   //Ajoute la pièce jointe
		$attachement = "------=".$boundary."\n";
		$attachement .= "Content-Type:  text/plain; name=\"Backup_MySql_aprmq_".date("Ymd-Hi").".sql\"\n";
		$attachement .= "Content-Transfer-Encoding: base64\n";
		$attachement .= "Content-Disposition: attachment; filename=\"Backup_MySql_aprmq_".date("Ymd-Hi").".sql\"\n\n";
		$attachement .= chunk_split(base64_encode($this->sql_export));

		mail($this->ini["email_adresse"],$sujet,$message.$attachement,$headers);
	}
	//save le fichier sur le serveur
	public function save_file($file="")
	{
		$this->ini["file_name"] = empty($file) ? $this->ini["file_name"] : $file;
		
		if (!$handle = fopen($this->ini["file_name"].'.sql', 'w'))
			echo('Impossible d\'ouvrir en écriture le fichier sql : '.$this->ini["file_name"].".sql\n");
		if (fwrite($handle, $this->sql_export) == FALSE)
			echo('Erreur d\'exportation de la base '.$this->ini["db_name"]."\n");
		fclose($handle);
	}
	//save le fichier sur un serveur externe
	public function save_ftp($url="",$login="",$pwd="",$file="")
	{
		$this->ini["ftp_url"] = empty($url) ? $this->ini["ftp_url"] : $url;
		$this->ini["ftp_login"] = empty($login) ? $this->ini["ftp_login"] : $login;
		$this->ini["ftp_pass"] = empty($pwd) ? $this->ini["ftp_pass"] : $pwd;
		$this->ini["ftp_filename"] = empty($file) ? $this->ini["ftp_filename"] : $file;

		
		$conn_id = ftp_connect($this->ini["ftp_url"]);

		// Identification avec un nom d'utilisateur et un mot de passe
		$login_result = ftp_login($conn_id, $this->ini["ftp_login"], $this->ini["ftp_pass"]);
		
		// Efface l'ancien fichier
		$del_result = ftp_delete($conn_id,$this->ini["ftp_filename"].".sql");
		
		// Fermeture de la connexion et du pointeur de fichier
		ftp_close($conn_id);
		
		$ftp = "ftp://".$this->ini["ftp_login"].":".$this->ini["ftp_pass"]."@".$this->ini["ftp_url"]."/".$this->ini["ftp_filename"].".sql";

		$handle = fopen($ftp, "w") or die("FTP - Impossible d'ouvrir en écriture le fichier : ".$this->ini["file_name"].".sql\n");

		if(fwrite($handle, $this->sql_export) == FALSE)
		{
			echo "Erreur d'exportation de la base ".$this->ini["db_name"]."\n";
		}
		fclose($handle);
	}
}

/*************************************
* Variable pour des dates
*************************************/
	define("VAR_JAN","Janvier");
	define("VAR_FEV","Février");
	define("VAR_MAR","Mars");
	define("VAR_AVR","Avril");
	define("VAR_MAI","Mai");
	define("VAR_JUN","Juin");
	define("VAR_JUI","Juillet");
	define("VAR_AOU","Août");
	define("VAR_SEP","Septembre");
	define("VAR_OCT","Octobre");
	define("VAR_NOV","Novembre");
	define("VAR_DEC","Décembre");

function format_date($date) {
	$mois = array(VAR_JAN, VAR_FEV, VAR_MAR, VAR_AVR, VAR_MAI, VAR_JUN, VAR_JUI, VAR_AOU, VAR_SEP, VAR_OCT, VAR_NOV, VAR_DEC);

	$jour = strftime("%d", strtotime($date));
	$mois2 = intval(strftime("%m", strtotime($date))) -1;
	$mois2 = $mois[$mois2];
	$annee = strftime("%Y", strtotime($date));
	
	$date = $jour." ".$mois2.", ".$annee;
	return $date;
}

/*************************************************/
/*           Programme principal                 */
/*************************************************/

$DB = new saveBD($_GET["db"]);
$DB->print_db();
//$DB->save_ftp();
//$DB->save_file();
//$DB->confirme_email();


?>

Conclusion

J'attends vos impression, la perfection n'existe point hélas dans notre monde.
 

Historique

17 avril 2008 14:38:16 :
Correction de la description
17 avril 2008 14:58:32 :
Correction mineur du code source
17 avril 2008 15:01:24 :
Correction mineur du code source
18 avril 2008 01:04:08 :
Modification des constants pour utilisé const aulieu de define dans ma class
18 avril 2008 01:08:48 :
j'ai effectuer une petit mise a jour de la section save_ftp() pour effacer l'ancien fichier et le remplacer par le nouveau.

Commentaires et avis

signaler à un administrateur
Commentaire de webdeb le 17/04/2008 19:06:54

Dans une classe, pour déclarer une constante, on utilise le mot clé "const"

signaler à un administrateur
Commentaire de mahlaoui le 21/04/2008 23:30:36

parfait (y)

signaler à un administrateur
Commentaire de christobal le 11/05/2008 10:01:53

Excelente source.`
pour un novice comme moi, elle a été trés facile a mettre en place et a faire fonctionné (5").
par contre je n'ais pas saisie tout les subtilitées et la force de cette source. Même si je sais que l'on peux envoyer par mail, ftp ou en local, je ne sais pas a quoi servent la fonction des dates, pourquoi dans certain cas on peux sasire dans l'url le nom de la table (pour sauvgarder juste une table ?) Comment faire fonctionner function print_db(). Pourquoi je n'ais pas de message quand l'envoie par mail c'est bien éffectué. Enfin voila toute ces petits tout qui fond des petit rien :).
Merci

signaler à un administrateur
Commentaire de 1030 le 15/05/2008 00:47:20

salut,

ma source à été réalisé dans le but de la mettre en cron sur un serveur distant, donc masouce.php?db=table permet de faire plusieur sauvegarde automatisé de mes base de données. Présentement elle sauvegarde tout la bd, mais si tu veux travaillé un peu dessus et pour permetre la sauvegarde juste d'une table, envoie moi le et je vais mettre cette source à jours.

pour la fonction des dates, elle permet de faire la conversion de mot en francais, c'Est a dire 03 = mars. si tu as plusieur langue a ton site, tu utilise le fichier avec le define que tu as de besoin pour que le mois s'afiche dans la languer désiré.

de plus tu est obligé de mettre le nom d'un table si tu veux que sa print quelque chose.

signaler à un administrateur
Commentaire de docteursas le 17/11/2008 16:46:03

j'essaie de mettre en place le code mais j'ai l'erreur suivante :
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in d:\icla3\testsave.php on line 20

signaler à un administrateur
Commentaire de mahlaoui le 17/11/2008 19:18:32

Cette classe fonctionne en PHP5
Donc vous êtes obligé de l'installer ou bien de modifier cette source pout l'adapter au PHP4 en éliminant les mots clé Private, Public

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

verif existance dans bdd [ par cseagle ] Bonjour à tous,J'ai une table MySql membres qui contient les infos des membres. A l'inscription je vérifie si l'email existe déjà dans la base auquel Sauvegarde base mysql ? [ par Joez ] Salut je voudrais savoir comment sauvegarder une base mysql en cliquant sur une urlMerciet est il possible d'envoyer cette base par email ? Probleme d'update checkbox [ par Alpha911 ] Bonjour,j'ai une base de donn&#233;e avec le champ Compte_FTP de type TINYINT j'ai r&#233;alis&#233; le fichier php mise a jour permettant l'update&nb aide recup de variables [ par actinetwork ] Bonjour,je m'explik, j'ai un petit script php sui veut envoyer un mail a une personne de ma base. Mais je n'arrive pas à lui faire prendre l'email par fonction mysql_num_rows() [ par cladx ] Bon voila je veus savoir si l'email est present dans la base de donn&#233;e donc justilise tous naturelement la fonction mysql_num_rows() dont voici u pb SQL2 [ par kyript ] $row_keyA = $row_key1['email']; echo "$row_keyA"; mysql_select_db($database_roots, $roots); $query_pass = "SELECT password FROM mb_membres_verif W formulaire html, base de données MySQL , mail par php [ par a_sophie ] Voil&#224;, j'ai nune base de donn&#233;es sous MySQL, un formulaire html o&#249; une fois les champs remplis devront aller ds la base. Par contre par fonction mail [ par refkaben ] salut tous le monde!j'ai un formulaire d'inscription, si un membre vient de s'inscrire on lui envoi un mail lui demandant de me contacter, voila le co page Php+ Mysql qui galère [ par felix_12 ] Voila, cela fait quelques heures que je gal&#232;re ssur ce petit code de rien du toutr qui ne marche pas , il n'affiche aucune erreur mais il najoute redirection et session [ par sparh ] Bonjour,je bloque sur un problème de session.J'essai de créer une zone membre à l'aide des sessions. Pour l'instant tout va bien et j'ai donc un lien


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,140 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.