LupusMic

  • Signature
    Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
  • Site web
  • Nombre de sujets
    26
  • Nombre de messages
    1 684
  • Nombre de commentaires
    4
  • Nombre de news
    Aucune
  • Niveau en PHP
    Gourou

Ses derniers messages sur les forums

LupusMic
le 21/04/2008 à 13:31
développement d'un module d'apprentissage de php
Pourquoi en PHP ? C'est quoi une animation ? Pourquoi ce besoin impérieux ? Pourquoi tant de haine envers la ponctuation et les majuscules ?
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 21/04/2008 à 04:35
Base de donnée complexe (casse tête)
Bon après relecture, moogli avait déjà donné la solution :p
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 21/04/2008 à 04:32
Base de donnée complexe (casse tête)
Il suffit de faire des tables de jointure :
create table artistes
( id integer auto_increment
, name char(100)
, primary key (id)
) ;

create table groupes
(id integer auto_increment
, name char(100)
, primary key (id)
) ;

create table artistes_groupes
( groupe_id integer not null
, artiste_id integer not null
, primary key (artiste_id, groupe_id)
, foreign key (artiste_id) references artistes(id)
, foreign key (groupe_id) references groupes(id)
) ;


En insérant les données suivantes :
insert into artistes (name) values  ('Zarakaï'),('Zehirman') ;
insert into groupes (name) values ('ZZ Top') ;
insert into artistes_groupes values (1, 2), (1,1) ;


Ainsi on pourrait retrouver tout les artistes d'un groupe :
select artistes.* from artistes 
join artistes_groupes on artistes.id=artistes_groupes.artiste_id
join groupes on artistes_groupes.groupe_id = groupes.id
where groupes.name = 'ZZ Top' ;


Bien sûr, tu peux complexifier en considérant l'appartenance à un groupe en fonction du temps, considérer qu'un artiste mort ne fait plus partie d'un groupe, qu'un groupe a une date de dissolution, etc.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/04/2008 à 20:39
Erreur SQL
1 - ton script est une passoire
2 - il n'y a aucun travail d'analyse
3 - il n'y a aucune bonne pratique

J'espère que la personne a qui tu as vendu la prestation n'a pas payé trop chère...
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 17/04/2008 à 17:40
Contrôler le nombre de caractères
(Morganpog) Ben c'est un peu ce que je dis ! La vérification doit être faite en PHP, le contrôle au niveau du HTML/JS est optionnelle en vue d'améliorer l'ergonomie.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 17/04/2008 à 14:47
changer le nom du fichier avant un upload
(Keika) C'est fondamentalement différent. Voici ce qu'entraînent respectivement action="./" et
action="", avec Apache comme serveur Web, configuré de manière standard :

Premier cas :
- demande de consultation du répertoire avec soumission des données par le client
- Apache regarde si le répertoire existe
- Apache cherche quel est le fichier par défaut à consulter pour ce répertoire
- invocation de index.php

Deuxième cas :
- demande de consultation du fichier avec soumission des données par le client, le fichier demandé par le client est le fichier courant
- Apache regarde si le fichier existe
- Apache invocation le fichier

Bien sûr, si le fichier dans lequel le formulaire se trouve est index.php, ça revient au même. Mais si le fichier s'appelle autrement, ça change tout.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 17/04/2008 à 14:40
Count avec date à réduire
J'ai peur que ça ne soit un peu une usine à gaz, mais essaye ça :
select count(*), substring(dateenregistrement, 1, 8) as jour
from jeuxgratuits_participations
group by jour
order by jour
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 17/04/2008 à 14:34
vider les champs après click sur un boutton.
En fait, le Web n'a rien de graphique, et s'attacher à privilégier un navigateur reconnu pour sa médiocrité ne va pas dans le seul de l'universalité du Web.

Les tableaux ne sont pas destinés à structurer la mise en page. Les tableaux ont une sémantique particulière (présenter des données tabulaires). Il faut utiliser les CSS. Je sais que c'est plus facile à dire qu'à faire.

En ce qui concerne ton problème. Pour éviter le double-post, il faut comparer ce qui a été soumis avec ce qui vient d'être publié par l'utilisateur. Il faut le faire du côté serveur.

En ce qui concerne le refresh, tu peux simplement forcer l'URL de l'iframe, plutôt que d'invoquer refresh.

Et merci de vouloir être meilleurs :) D'autres furent vexés par nos remarques (bon, les miennes, soit, mais bon :p).
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 17/04/2008 à 02:21
Contrôler le nombre de caractères
Tu peux effectivement commencer à contrôler au niveau de l'HTML et du javascript (onchange, onsubmit.

Un truc du genre :
<script type="text/javascript">
var validate = function(form)
{
// Ici tu valides :)
// [lien=http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html#ID-40002357]DOM HTMLFormElement[/lien]
// si le formulaire est correct
return true
// sinon
return false
}

var field_constraint = function(field, min, max)
{
if(field.size &gt;= min &amp;&amp; field.size &lt; max)
// indiquer que le champs est correctement rempli
else
// indiquer que le champs est correctement rempli
}
</script>
<form onsubmit="validate(this)" method="post">
<label for="username" maxlenght="4">Login&nbsp;:</label>
<input id="username" name="username" onchange="fieldconstraint(this,4,12)" />
</form>

Pour indiquer le statut de validité du champ, tu peux changer la classe de l'input, ou du label, ou encore indiquer un message de statut.

Je tiens à attirer ton attention sur le fait que ces deux actions sont d'ordre ergonomiques, en aucun cas tu ne peux assumer dans ton script de traitement côté serveur que les données fournies par le client sont conformes à tes attentes.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 15/04/2008 à 21:26
arrays multidimentionnels
Ça fait un peu UAG :) Quel est la problématique à laquelle tu tente d'apporter une réponse ?
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LoadingChargement en cours