Mysql : modifier le prefixe des tables d'une base

Contenu du snippet

Le script php permet de modifier le prefixe des tables de votre base de données .

ce script est utile pour sécuriser vos bases qu'utilisent les cms joomla , drupal , wordpress .

Réguliérement il est nécessaire de modifier les prefixes de vos tables pour plus de sécurité.

Source / Exemple :


<?php
//initialisation
$serveur="serveur";
$user="user";
$pass="password";
$base="base";
$prefixe="mcajs";

$link=mysql_connect($serveur,$user,$pass) or die("connexion impossible");

mysql_select_db($base,$link) or die("connexion impossible");

echo "/*****************operation entamée************************/<br>";

if($link)
echo "/*****************connexion a la base avec succés*********/<br>";

$sql_1="show tables from ".$base;

$req_1=mysql_query($sql_1,$link) or die("connexion impossible");

if($req_1)
echo "/****************listing tables avec succés ************/<br>";

while($a_1=mysql_fetch_array($req_1))
{
  $table_ancien=$a_1[0];
  echo "ancien: ".$table_ancien."<br>"; 
  list($prefix,$un,$deux,$trois)=split('[_]',$table_ancien);
  if(empty($un))
   {
     $table_nouveau=$prefixe."_".$un;
    }
  else
    {
        if(empty($trois))
          {
             $table_nouveau=$prefixe."_".$un."_".$deux;
          }
          else { $table_nouveau=$prefixe."_".$un."_".$deux."_".$trois; }
     }
  echo "nouveau: ".$table_nouveau."<br>";
}
$sql_2="Rename Table ".$base.".".$table_ancien." TO ".$base.".".$table_nouveau." ";

$res=mysql_query($sql_2,$link) or die(mysql_error());

if($res)
echo "/*****************operation terminé***********************/";
?>

Conclusion :


Toute contribution pour ameliorer le script

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.