Lefounard

  • Signature
    I am singing in the rain , I am happy again !!
  • Site web
  • Nombre de sujets
    177
  • Nombre de messages
    785
  • Nombre de commentaires
    9
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses derniers sujets sur les forums

Lefounard
le 02/08/2007 à 12:49
Probleme Affichage dynamique
Bonjour,
Voila, j'ai fait une interface graphique pour afficher une liste d'elements.
Au debut en statique, l'affichage etait impecable, maintenant depuis que j'ai mis l'affichage des lignes dans une boucle while, tout est décalé !
/* CSS */
.ligne_liste_produit{
border-style:dotted;
border-width:0px 0px 1px 0px;
padding:0.5em;
}

.ligne_liste_produit a{
color:#000;
}

.ligne_liste_produit a:hover{
color:grey;
text-decoration:none;
}

.ligne_liste_produit img{
float:left;
margin:0.5em;
width:75px;
height:75px;
}

.ligne_liste_produits_contenu{
margin-left:100px;
padding:1em;
}


<?php
<div id="frame_liste_produits">
<div id="titre_liste_produits">
<span class="droite">
Trier par :
<select>
<option>Nom de produit : A à Z</option>
<option>Nom de produit: Z à A</option>
</select>
</span>
Liste Produits
<hr>
</div>



<div class="ligne_liste_produit">
<img src="./photos/thumbs/mini_cam6.jpg" />
<div class="ligne_liste_produits_contenu">
<a href="#">Caméra dôme Anti vandale CPC 396</a><br />
Caméra dôme anti vandale Couleur Capteur Super HAD CCD 1/3" de Sony<br />
Haute résolution : 520 lignes<br />

Luminosité : 1Lux / F2.0 ...<br />
</div>
</div>
<div class="ligne_liste_produit">
<img src="./photos/thumbs/mini_cam6.jpg" />
<div class="ligne_liste_produits_contenu">
<a href"#">Caméra Couleur Hte Résolution Outdoor CPC 383</a><br />
Caméra OUTDOOR Couleur Jour Nuit Haute Résolution avec capteur CCD 1/3" et DSP de Sony<br />

Luminosité minimale : 0.25 Lux / F1.2; 0Lux / F1.2 avec IR allumée<br />
Nombre de pixels :<br />
768(H) x 494(V) PAL<br />
752(H) x 582 (V) NTSC<br />
</div>
</div>
<?php
/* Affichage dynamique, tout se decale vers la droite !!! */ mysql_select_db('produits',LINK);

$sql='SELECT nom, descriptif FROM produits_general WHERE id_cat_fk="'.$id_cat.'"';
$req=mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

/* Si il y a des sous catégories, on les affiche */
if(mysql_num_rows($req)){
while($data = mysql_fetch_array($req))
{?>
<div class="ligne_liste_produit">
<img src="./photos/thumbs/mini_cam6.jpg" />
<div class="ligne_liste_produits_contenu">
<a href="#"><?php echo htmlentities(trim($data['nom'])); ?></a><br />
<?php echo nl2br(htmlentities(trim($data['descriptif']))); ?>
</div>
</div>
<?php
}
}



?>
<div id="pages_liste_produits">
<a href="#">1</a> -
<a href="#">2</a>
</div>
</div>
?>


Merci de votre aide,
Ciao,
I am singing in the rain , I am happy again !!
Lefounard
le 01/08/2007 à 18:15
Requete Photo Principal
Bonjour,
Voila toujours dans le developpement de mes fiches produits, je voudrais vous demander conseil sur comment organiser l'affichage des photos.
En fait, je laisse le choix de ne pas saisir de photo a l'ajout d'un produit dans le catalogue.
Donc il faudrait qu'affichage de mes listes de produits avec leur vignettes, la possibilité de mettre une photo par defaut.
Cette photo par defaut comment faire ?

1er solution :
A l'affichage des photos des photos de produits, si ma requete des noms de photos est vide, alors j'affiche par defaut une photo. LE probleme, c'est qu'a l'affichage des produits, quand je fais mas jointure entre la table porduit et produit_photos, si il y a pas de photo pour un produit alors il ne sera pas afficher a cause de la clause AND id_ph_principal= id_photo.
Alors evidement je peux le faire par deux requetes, mais quand il y a 50 produits a afficher, ca fait lourd.

2eme solution:
Dans ma table des photos, je mets a l'identifiant 1, la photo par défaut.
Lorsque que j'ajoute un produit au catalogue, si je ne mets pas de photo, alors la photo defaut sera celle d'id 1. Ainsi l'utilisateur pourra aussi

En gros, j'essaie de gerer le stockage de la photo principal d'un produit, de sorte lors de l'affichage du produit dans une liste, je n'ai pas trente requete a faire, et donc soit une requete simple , soit une requete avec une jointure.

Merci de vos conseils,
I am singing in the rain , I am happy again !!
Lefounard
le 01/08/2007 à 13:00
Transactionner Suppression
Bonjour,
Je dois gerer la suppression de 5 fichier stockes sur mon serveur.
Je veux que ca fonctionne en mode : tout ou rien.
Par exemple, le premier et second fichier sont supprimé, au troisieme j'ai une erreur qui m'empeche de supprimer.
Je voudrais une sorte de rollback, qui annule la suppression des fichiers 1 et 2, comment faire ?
Pour info, j'utilise unlink pour supprimer mes fichiers.
Pour plus d'info, il s'agit de la suppresion d'une fiche produit avec des données en bdd et des fichiers sur le serveur.
Merci de vos conseils,
Ciao,
I am singing in the rain , I am happy again !!
Lefounard
le 30/07/2007 à 11:56
Document Imprimable
Bonjour,
Voila j'ai un tableau dans ma page avec des données, et je voudrais mettre un lien pour imprimer rien que le tableau.
Peut-etre que vous pourrez m'aider.
Merci,
Ciao,
I am singing in the rain , I am happy again !!
Lefounard
le 27/07/2007 à 15:22
Itineraire avec Google Map API
Bonjour,
Voila je veux integrer a mon site un carte pour tracer un itinéraire entre deux adresses. Evidement je veux qu'il y est le calcul des plus courts chemins.
J'ai regarder un peu sur le net, comment integrer cette carte a calcul d'itinéraire sur son, et aussi j'ai lu les exemples de l'API de google.
Or je n'arrive pas a trouvé, le cas que je veux, pourtant simple, une carte interactive avec calcul d'itinéraire.
Est-ce que vous avez deja implémenter ce type de carte ? Auriez vous des exemples ? Merci
Ciao,
I am singing in the rain , I am happy again !!
Lefounard
le 25/07/2007 à 16:26
PHP Sessions Securiser
Bonjour,
Voila je voudrais sécuriser ma partie administration du site avec les sessions php, donc j'ai trouvé quelques exemples sur le net. Et j'ai realiser ca :

login.php
<?php
session_regenerate_id();
$_SESSION['initiated'] = true;
$_SESSION['level'] = 'admin';
$_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']);

/* Creation de la fingerprint cote serveur */
$string = $_SERVER['HTTP_USER_AGENT'];
$string .= 'N0S3s510nH4cK1NG';
$fingerprint = md5($string);

/* redirection sur l'accueil administration */
echo '<a href="index.php?n='.$fingerprint.'">Entrer Admin</a><br />';
?>


Bon on définie, une fingerprint qui sera transmit par GET entre les pages securise.

pagesec.php
<?php
/* Anti attaque par SESSION ID -----------------------------------------------------------------------------*/

if (!isset($_SESSION['initiated']))
{
echo 'Session non initialisé<br />';
echo 'Pour des raisons de sécurité, nous vous demander de vous connecter<br />';
echo '<a href="login_admin.php">connexion</a>';

/* Formulaire de connexion */

/* a Mettre dans la connexion */
/*session_regenerate_id();
$_SESSION['initiated'] = true;*/
}

echo '<br /><br />------------------------------------------------------------------<br /><br />';

/* Securiser PHP SESSIONS contre SID Attack */
/* Si la variable de session du navigateur est definie */
if(isset($_SESSION['HTTP_USER_AGENT'])){

/* Creation de la fingerprint cote serveur */
$string = $_SERVER['HTTP_USER_AGENT'];
$string .= 'N0S3s510nH4cK1NG';
$fingerprint = md5($string);

/* Si la fingerprint a deja été definie */
if(isset($_GET['n'])){
/* Si la fingerprint du client correspond a celle cote serveur, peu de risque de detournement de SID */
if(trim($_GET['n']==$fingerprint)){
echo 'Authentification correcte';
}
else {
echo 'Fingerprint non correspondante<br />';
echo 'Pour des raisons de sécurité, nous vous demander de vous connecter<br />';
echo '<a href="login_admin.php">connexion</a>';

/* Formulaire de connexion */

}
}
else {
echo 'Fingerprint non définie.<br />';
echo 'Pour des raisons de sécurité, nous vous demander de vous connecter<br />';
echo '<a href="login_admin.php">connexion</a>';
/* Formulaire de connexion */
}
}
else
{
echo 'Variable de sessions http user agent non définie.<br />';
echo 'Pour des raisons de sécurité, nous vous demander de vous connecter<br />';
echo '<a href="login_admin.php">connexion</a>';

/* Formulaire de connexion */

/*echo 'user agent NON defini';
$_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']);*/
}

/*----------------------------------------------------------------------------------------------------------------------------*/
?>


Et ca, c'est le controle en debut de page.
En fait cela permet d'eviter une attaque par fixation de session (pagesec.php?PHPSESSID=numero) et aussi une attague par detournement de session, quelqu'un se fait passer par quelqu'un d'autres, d'ou l'interet de la fingerprint base sur le md5 du useragent et le md5 d'une chaine de caractere pris au pif.
Pouvez vous me conseiller sur la sécurité des sessions, et pensez vous qu'il y a mieux ou plus simples ?
Merci de vos conseils,
Ciao,
I am singing in the rain , I am happy again !!
Lefounard
le 23/07/2007 à 12:13
Include PHP
Bonjour,
Voila mon probleme est comment organiser intelligement une inclusion.
J'ai une page administration.php qui doit inclure toute les autres.
J'inclue une page adminA.php dans administration.php, j'arrive a visualiter correctement adminA.php dans administration.php.
Quand je clique sur un lien de adminA.php, je voudrais que la page atteinte reste dans administration.php.
Avez-vous une solution ? est-ce bon ou il faut faire autrement ? il y a une histoire de referencement aussi ?
Merci de vos conseils,
Ciao,
I am singing in the rain , I am happy again !!
Lefounard
le 20/07/2007 à 13:53
MySQL InnoDB Transaction
Bonjour,
Je n'ai pas du saisir le fonctionnement des transaction. Voila mon morceau de code dans lequel, j'ai volontairement inserer une erreur sur la deuxieme requete, pour voir si c'était annule.
/* On demarre notre transtaction */
$req='BEGIN TRANSACTION';
mysql_query($req,LINK);
/*$req.='SET AUTOCOMMIT = 0'; */

echo $req.'<br />';

/* On supprime les meta données du champs situé dans la table meta_clients_extend */
$req= sprintf("DELETE FROM `meta_clients_extend` WHERE id_champ='%d'",mysql_real_escape_string($id_champ, LINK));
mysql_query($req,LINK);
echo $req.'<br />';


/* On supprime le champs dans la table clients_extend */
/* ALTER TABLE `clients_extend` DROP `nom_champ` */
$req=sprintf("ALTER TABLE `clients_extend` DROPFR `%s`",mysql_real_escape_string($nom_champ, LINK));
mysql_query($req,LINK);
echo $req.'<br />';

$req='COMMIT';
mysql_query($req,LINK);

Or la premiere requete est bien execute et en bdd, les elements sont enleve, normalement le fait que ce soit une transaction aurait du pratiquer la politique du tout ou rien ?
Mes tables sont en InnoDB.
Merci de vos conseils,
Ciao,
I am singing in the rain , I am happy again !!
Lefounard
le 19/07/2007 à 17:21
Position recalcule
Bonsoir,
Voila, je voudrais realiser un systeme pour gerer le positionement d'element par rapport a d'autres.
Dans mon cas, j'ai 4 photos et chacune a une position numerique qui est unique.
photo 1 pos 1
photo 2 pos 2
....
Je veux, pouvoir ajouter une photos apres n'importe laquelle et donc imposer de recalculer toutes les positions
des positions supérieurs ou egale a la position de la nouvelle photo. Le probleme c'est que ca fait faire une boucle
de requete UPDATE sur le champs pos de chaque photo, ce qui est plutot lourd.
Avez vous une solution optimiser ? (le javascript a exclure car il est désactivable, il me faut une verification sur cote serveur).
Merci de vos conseils,
I am singing in the rain , I am happy again !!
Lefounard
le 18/07/2007 à 14:03
Agrandir les textarea
Bonjour,
Juste une remarque, au niveau des textarea qui sont trop petites et assez chiante.
Serait-il possible de les agrandir ?
Ciao,
I am singing in the rain , I am happy again !!
LoadingChargement en cours