J'ai créé une fonction php simple pour utiliser les requêtes MySQL.
Toute requête peut être exécutée en une seule fonction simple.
Dans le cas d'une requête de sélection, Nous pouvons obtenir les arguments sélectionnés car le nom de la variable contient la valeur de l'argument sélectionné.
Par exemple :
<?php
q("select user_name,email_id from users where user_id=48");
echo $user_name; echo "<br>";
echo $email_id;
?>
ou vous pouvez définir votre propre nom de variable en mettant " comme ".
<?php
q("select user_name as uname, email_id as email from users where user_id=48");
echo $uname; echo "<br>";
echo $email;
?>
Le résultat sera :
someuser
someemail
Si un plus grand nombre de lignes a été sélectionné, le nom de la variable sera créé sous forme de tableau. pour ex :
<?php
q("select user_name,user_id from users");
for($n=0;$n<count($user_name);$n++)
{
if(count($user_name)==1) // if single row is selected
{
$username_val=$user_name;
$user_ids=$user_id;
}else{
$username_val=$user_name[$n]; // for multiple rows selected
$user_ids=$user_id[$n];
}
echo $username;
}
?>
ou vous pouvez définir votre propre nom de variable en mettant " comme ".
<?php
q("select user_name as un,user_id as uid from users");
for($n=0;$n<count($user_name);$n++)
{
if(count($user_name)==1) // if single row is selected
{
$username_val=$un;
$user_ids=$uid;
}else{
$username_val=$un[$n]; // for multiple rows selected
$user_ids=$uid[$n];
}
echo $username_val; echo " ";
echo $user_ids; echo "<br>";
}
?>
Le résultat sera : (Si la table de l'utilisateur a trois rangées)
User1 4043
User2 4048
User3 4056
Créer le fichier de connexion mysql ex : mysql_connect_file.php
<?php
$dbc=new mysqli('localhost', 'my_user', 'my_password', 'my_db');
?>
La fonction php est la suivante
<?php
require_once './mysql_connect_file.php';
function q($q)
{
$main_q=$q;
$q= strtolower($q);
global $dbc;
$temp=$q;
$temp=str_replace(" ", "", $temp);
$temp= strtolower($temp);
$temp=".$temp";
if(strpos($temp, "update")==1 || strpos($temp, "insert")==1 || strpos($temp, "delete")==1 || strpos($temp, "alter")==1 || strpos($temp, "create")==1)
{
$rd2= mysqli_query($dbc,$main_q);
if($rd2)
{
return TRUE;
}
else{
$mysql_err= mysqli_error($dbc);
$err= debug_backtrace();
$err_line=$err[0]['line'];
$err_file=$err[0]['file'];
echo "<font color='black'>Error at <b>$err_file on line $err_line </b>query --></font><font color='maroon'>$main_q</font> (<font color='red'> $mysql_err </font> )";
return FALSE;
}
}elseif(strpos($temp, "select")==1){
$qn= str_replace("select ", "", $q);
$qn=substr($qn,0, strpos($qn, " from"));
$qn="$qn,";
$selc= str_replace("`","", $qn);
$qn= str_replace("`","", $qn);
$my_var=array();
$my_nm=array();
for($m=1;$m<=substr_count($selc, ',');$m++)
{
$my_nm[$m]=substr($qn,0, strpos($qn, ","));
$qn=substr($qn,strpos($qn, ",")+1, strlen($qn));
if(strpos($my_nm[$m]," as ")>0)
{
$my_var[$m]= str_replace(" as ", "~", $my_nm[$m]);
$my_var[$m]= str_replace(" ", "", $my_var[$m]);
$my_var[$m]=substr($my_var[$m],strpos($my_var[$m],"~")+1,strlen($my_var[$m]));
}else
{
$my_var[$m]=substr($my_nm[$m],0, strlen($my_nm[$m]));
$my_var[$m]= str_replace(" ","", $my_var[$m]);
}
}
$rn=mysqli_query($dbc, $main_q);
if($rn)
{
if(mysqli_num_rows($rn)>0)
{
for($t=1;$t<=count($my_var);$t++)
{
$$my_var[$t]=array();
}
while($row=mysqli_fetch_array($rn,MYSQLI_ASSOC))
{
if(mysqli_num_rows($rn)>1)
{
for($t=1;$t<=count($my_var);$t++)
{
${$my_var[$t]}[]=$row[$my_var[$t]];
}
}else{
for($t=1;$t<=count($my_var);$t++)
{
$$my_var[$t]=$row[$my_var[$t]];
}
}
}
if(mysqli_num_rows($rn)>1)
{
for($t=1;$t<=count($my_var);$t++)
{
$GLOBALS[$my_var[$t]]= sel_mr($my_var,$$my_var[$t]);
}
for($t=1;$t<=count($my_var);$t++)
{
return $$my_var[$t];
}
}
if(mysqli_num_rows($rn)==1)
{
for($t=1;$t<=count($my_var);$t++)
{
$GLOBALS[$my_var[$t]]=$$my_var[$t];
}
for($t=1;$t<=count($my_var);$t++)
{
return $$my_var[$t];
}
}
}else
{
for($t=1;$t<=count($my_var);$t++)
{
$GLOBALS[$my_var[$t]]=NULL;
}
for($t=1;$t<=count($my_var);$t++)
{
return $my_var[$t];
}
}
}else
{
for($t=1;$t<=count($my_var);$t++)
{
$my= mysqli_error($dbc);
if($t==1)
{
$err= debug_backtrace();
$err_line=$err[0]['line'];
$err_file=$err[0]['file'];
echo "<font color='#ef0000'>Error at <b>$err_file on line $err_line </b>query --></font><font color='maroon'>$q</font> (<font color='red'> $my </font> )";
}
}
for($t=1;$t<=count($my_var);$t++)
{
for($p=0;$p<count($$my_var[$t]);$p++)
{
$a=$$my_var[$t];
return $a;
}
}
}
}
}
function sel_mr($a,$ab)
{
for($t=1;$t<=count($a);$t++)
{
foreach ($ab as $my)
{
${$a[$t]}[]=$my;
}
}
for($t=1;$t<=count($a);$t++)
{
return $$a[$t];
}
}
?>
Notes :
Vous pouvez enregistrer ce code dans un fichier, puis appeler cette fonction en incluant le nom du fichier.
par ex : si votre fichier s'appelle q.php ( --> contient la fonction q ) alors vous pouvez utiliser le code pour d'autres fichiers en incluant
<?php
include 'q.php';
q("select user_name from users where user_id=4048");
echo $user_name;
?>