zebden

  • Signature
    zebdinou pour les intimes / Blog : http://www.zebden.fr
  • Site web
  • Nombre de sujets
    32
  • Nombre de messages
    1 657
  • Nombre de commentaires
    62
  • Nombre de news
    173
  • Niveau en PHP
    Débutant

Ses derniers messages sur les forums

zebden
le 16/05/2007 à 11:57
Donnée déjà existante?
<?php
$sql = 'SELECT * FROM `entreprise` ';
$sql .= 'WHERE `NumSIREN` = "' . mysql_real_escape_string($_POST['NumSIREN']) . '" ';
$sql .= 'OR `NomEntreprise` = "' . mysql_real_escape_string($_POST['NomEntreprise']) . '"';

$reponse = mysql_query($sql) or die('Erreur SQL !<br />Veuillez contacter l\'administreur du service.'.mysql_error());

// Mise en tableau des données.
$entreprise_classer = mysql_fetch_assoc($reponse);

if($entreprise_classer) {
// L'affichage de tes données
}
else {
// Elle existe pas.
}
?>


desolé faute de synthaxe de ma part ^^
zebdinou pour les intimes / Blog : http://www.zebden.fr
zebden
le 16/05/2007 à 11:55
Donnée déjà existante?
Je t'ai donné la réponse au dessus plus optimisée que celle que tu fais.

Ensuite,

Tu séléctionne dans ta base seulement la nombre de tuples lié à ta clause Where, mais pas les autres champs. donc tout logiquement, ils n'existent pas (Undefined index) .. Qui veut Clé de tableau indéfinie.

à ce moment là, on pourrait voir un truc plutôt dans ce genre là :

<?php
$sql = 'SELECT * FROM `entreprise` ';
$sql .= 'WHERE `NumSIREN` = "' . mysql_real_escape_string($_POST['NumSIREN'] . '" ';
$sql .= 'OR `NomEntreprise` = "' . mysql_real_escape_string($_POST['NomEntreprise'] . '"';

$reponse = mysql_query($sql) or die('Erreur SQL !<br />Veuillez contacter l\'administreur du service.'.mysql_error());

// Mise en tableau des données.
$entreprise_classer = mysql_fetch_assoc($reponse);

if($entreprise_classer) {
// L'affichage de tes données
}
else {
// Elle existe pas.
}
?>


Bon courage ^^.

P.S : Bzh pas de comment sr l'étoile smiley
zebdinou pour les intimes / Blog : http://www.zebden.fr
zebden
le 16/05/2007 à 11:46
probleme php : requete contenant like $var+*
Lu,

alors deux choses, les délimiteurs de table, base et champ sur Mysql n'est pas le guillemet mais la backquote (`) au contraire des valeurs où quote et double quote le sont.


Ensuite le "joker" on va dire n'est pas * mais %

Donc cela donne :

$sql = 'SELECT * FROM `table` WHERE `fields` LIKE "'.$lettre.'%";';


Bon courage ^^
zebdinou pour les intimes / Blog : http://www.zebden.fr
zebden
le 16/05/2007 à 11:42
variable entre {}
Bonjour,

donc vous avez faux tous les deux pour le coup. Il y a une différence entre template et constante.

define('Toto', 'truc'); // Constante
echo Toto; // retourne truc

Pour le problème initial, on parse une structure html qui nous sert de squelette. On y met des variable entre crochets puis via un moteur de template on parse ce même fichier ou nos variables seront remplacées.

du genre

$Template = new template('truc.tpl');
$Template -> set_var('U_INDEX', 'lien.html');

$Template -> parse();

cela sert à séprarer toutes les actions sur le serveurs et l'affichage parsé des données. Si en PHP, je trouve cela un peu inutile du fait que tu peux très bien passé par PHP pour le faire. Dans d'autres langages, c'est très utile. Même en php finalement avec le bon moteur genre Smarty.

Je te laisse regarder sur Google : "moteur template PHP" pour en savoir plus.

Bon courage ^^ (à vous 3 ;-))
zebdinou pour les intimes / Blog : http://www.zebden.fr
zebden
le 14/05/2007 à 16:12
Donnée déjà existante?
<?php
$sql = 'SELECT COUNT(*) FROM entreprise WHERE `NumSIREN` = "' . mysql_real_escape_string($_POST['NumSIREN'] . '" OR `NomEntreprise` = "' . mysql_real_escape_string($_POST['NomEntreprise'] . '"';
?>


Voilou ^^
Bon courage.
zebdinou pour les intimes / Blog : http://www.zebden.fr
zebden
le 11/05/2007 à 17:15
Donnée déjà existante?
lu,

<?php
$sql = 'SELECT COUNT(*) FROM entreprise WHERE `NumSIREN` = "' . mysql_real_escape_string($_POST['NumSIREN'] . '"';
$query = mysql_query($sql) or die('Erreur SQL !<br />Veuillez contacter l\'administreur du service.'.mysql_error());
$donnee = mysql_fetch_row($query);

if($donnee[0] > 0) {
echo 'L\'entreprise existe';
}
else echo 'non';


Donc plusieurs choses :

- le @ devant une fonction est à eviter, @ est pour cacher l'erreur provoquée par la fonction, or quand on code, on devrait pas avoir d'erreurs ^^
- COUNT(*) va compter le nombre de lignes correspondantes à la clause WHERE
- La clause WHERE va chercher le numero SIRET s'il existe dans le base.
- mysql_fetch_row retourne un tableau à clef numérique étant donné que l'on a une seule donnée retournée, pas besoin de plus.

Voilà pour le reste, les cours ^^

Bon courage.
zebdinou pour les intimes / Blog : http://www.zebden.fr
zebden
le 10/05/2007 à 15:06
Balise h1,h2 différent sur FF et IE
euh non

dans ta feuille de style :

h1 {
font-size:14px;
font-family:Arial, Verdana, sans-serif;
color:#FF0000;
/*
Ce que tu veux
*/
}

Pour la balise générique et ceci marche avec toutes les balises. ^^
Il ne faut pas mettre de point devant.
zebdinou pour les intimes / Blog : http://www.zebden.fr
zebden
le 07/05/2007 à 11:11
Question sur wamp5
Lu,

ton serveur à un document index qui est la racine de "www" (Pour Wamp). L'utilité des alias est de mettre où tu veux ton dossier et d'indiquer à Apache où il se trouve. Voilà, mais pour un environnement local pour tester donc detiner à la production. Y pas d'utilités si ce n'est faire des alias comme raccourcis mais bon ^^.
zebdinou pour les intimes / Blog : http://www.zebden.fr
zebden
le 07/05/2007 à 11:08
Internal Error
Au lieu de dire non, essaie de comprendre qu'est qu'une erreur 500. BzH n'a pas totalement tort du fait qu' "Internal error" est une erreur Interne et donc du serveur. Souvent causé en effet par un .htaccess puisque c'est dans ce fichier que l'on met des directives spécifiques au serveur.

Ici, oui surement que header qui intervient sur le serveur pour envoyer des en-têtes ensuite au navigateur a causé ce souci si ta boucle tourne dans à l'infini.
zebdinou pour les intimes / Blog : http://www.zebden.fr
LoadingChargement en cours