LA GLOBULE

Inscris le 25/09/2002 à 10:40
  • Site web
  • Nombre de sujets
    47
  • Nombre de messages
    8 345
  • Nombre de commentaires
    142
  • Nombre de news
    8 346
  • Niveau en PHP
    Excellent

Ses derniers messages sur les forums

LA GLOBULE
le 14/07/2006 à 19:11
probleme affichage MySql
$req = mysql_query("SELECT * FROM shp_art WHERE colID=$id ORDER BY ref");
$res = mysql_query($req);

Tu lances deux fois un mysql_query, ca peut pas coller.
Le premier suffit.
LA GLOBULE
le 30/06/2006 à 23:00
Hello !
On s'est dejà parlé un peu sur IRC, mais bienvenue encore une fois smiley
LA GLOBULE
le 26/06/2006 à 07:58
SQL - Erreur insertion donnée
Cette fonction est identique à mysql_real_escape_string() à l'exception faite que mysql_real_escape_string() prends deux identifiants de connexion comme premiers arguments et échappe la chaîne en se basant que le jeu de caractères courant. mysql_escape_string() ne prends pas d'identifiant de connexion et ne respecte pas le jeu de caractères courant.


C'est expliqué clairement : la real a besoin d'une connexion au serveur, et fait une requete SQL à chaque fois que l'on appelle pour connaitre le jeu de caractère courant.

Cela peut-etre chiant, car je peux très bien avoir envie de déclarer mes variables PHP contenant des requetes SQL avant de faire une connexion à MySQL.
Or dans ce cas, je serais obligé de modifier mes $sql une fois la connexion à MySQL établie.

De plus, elle n'offre aucun système pour stocker le jeu de caractère courant quelque part, je trouve cela dommage, et c'est clairement inutilisable en production si tu n'as pas beaucoup de sous et un gros trafic (testé chez iFRANCE, et ben on est revenu à mysql_escape_string pour eviter de racheter des box pour MySQL. Ben ouais, avec une base de 10 Go qui se prend 500 select par seconde en moyenne, tu la sens la différence entre la real et la normale).

Sinon, oui, la real est forcemment plus efficace, car elle check tout en fonction de tes données en base.

Après c'est un choix à faire entre mettre à genou un mysql (comme vu precedemment, tout depend de ton trafic, pour un site perso on ne verra pas vraiment la différence) et un escape un peu moins efficace.

En meme temps, si tu utilises du 8859-1, a priori, les seuls trucs à escaper, ce sont les ', or mysql_escape_string le fait très bien.

Pis les gens de MySQL, ils m'enervent, voila smiley
LA GLOBULE
le 25/06/2006 à 17:44
problème de doublette
Je n'ai pas tout lu, mais pourquoi fais tu 3 requetes SQL alors qu'une seule suffit ?

$sql=("select pseudo from $table Where email='$cokmail'");
$sql=("select sexe from $table Where email='$cokmail'");
$sql=("select image from $table Where email='$cokmail'");

Remplace çà par :

$sql = "select pseudo, sexe, image from ".mysql_escape_string($table)." Where email='".mysql_escape_string($cokmail)."'";
LA GLOBULE
le 25/06/2006 à 13:17
Afficher tableau ssi on a des données
Ben affiche le tableau que si la table a des éléments.
mysql_num_rows peut t'aider pour ça.

PS : soignez un peu vos titres de sujet, la c'est du n'importe quoi...
LA GLOBULE
le 24/06/2006 à 13:08
SQL - Erreur insertion donnée
"mysql_real_escape_string() est même encore préférable à mysql_escape_string() !!!"

Je ne suis pas d'accord. La real demande une connexion à MySQL et elle fait une requete à MySQL à chaque fois que tu l'appelles.
Cette fonction est inutilisable si tu as un "gros" site.

dunbar : non, ce n'est pas juste.

$sql = "INSERT INTO table VALUES ('".mysql_escape_string($id_client)."',".mysql_escape_string($ref).",'".mysql_escape_string($nom)."','".mysql_escape_string($adr_client)."','".mysql_escape_string($rem_client)."','".mysql_escape_string($tel_client)."')";
LA GLOBULE
le 24/06/2006 à 11:54
SQL - Erreur insertion donnée
Ben on s'en fou du nombre de lignes...
Tu as 5 champs, met que 5 trucs dans ton INSERT.

Et comme je te l'ai dit, utilise la fonction mysql_escape_string autour de tes variables.
LoadingChargement en cours