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 18/07/2008 à 15:46
Paramètres $stmp et UPDATE
Je comprends mieux ton soucis, c'était la syntaxe SQL de Update qui te perturbait. Pour ça il faut aussi utiliser la doc en ligne de MySQL. La description de la syntaxe n'y est pas des plus accessible, mais on s'en sort.

Si l'anglais n'est pas un problème, je peux te conseiller « php|architect's - Guide to PHP Design Pattern » isbn:0-9735898-2-5
Ce bouquin développe l'usage des design patterns appliqués au PHP, et donne pas mal d'idées intéressantes.

Ensuite, pour l'algorithmie, ça va être plus dur. Si tu n'as pas peur, tu peux regarder du côté des ouvrages Java ou C++ (voir C). Les meilleurs livres sont édités aux éditions O'Reilly. À savoir que, malheureusement, O'Reilly France ferme ces portes. Les livres en français risquent donc de devenir rare chez cet éditeur.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/07/2008 à 15:32
Formulaire AJAX avec un wait pour le bouton valider
Ah oui mais non, ça ne va pas aller. Quand on pose une question, il faut aussi dire ce qu'on utilise de particulier. Ici c'est visiblement la bibliothèque Prototype. Je n'ai rien contre, mais il faut le préciser.

Bref, d'après la documentation de prototype, onSuccess n'est franchement pas utilisé à l'envoie de la requête. Donc c'est normal que le bouton ne disparaisse pas.

Tu devrais plutôt cacher le bouton avant d'envoyer la requête Ajax, et de définir le comportement du bouton en fonction du succès la requête Ajax en utilisant les callbacks de l'objet Ajax.Request de Prototype.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/07/2008 à 10:04
Formulaire AJAX avec un wait pour le bouton valider
J'approuve la Globule, et je rajouterais quelque solutions :
- cacher le bouton de soumission en modifiant son style
- le désactiver via l'attribut disabled de l'input concerné

Il doit y avoir encore plein de solution :) Et même des plus crades que innerHTML ;)
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/07/2008 à 09:59
Paramètres $stmp et UPDATE
Toutes les informations sont dans la documentation. Bien sûr il faut lire la documentation des classes et des fonctions, mais aussi les commentaires qui sont souvent très intéressants.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/07/2008 à 09:56
planning hebdomadaire
(Keika) C'est parce qu'on fait des boucles qu'on est un sauvage. Ça dépend où on les fait. Comme les galipettes 8)

Et puis je pouvais pas m'y coller, j'avais piscine.

(krma) Essaye de ne pas tout faire en même temps. Je te conseillerais de créer des classes qui s'occupent de gérer l'aspect agenda. Tu ne t'occupe pas de la base de données, on s'en fout pour l'instant.

Tu testes en y injectant des données manuellement (c'est à dire sans interroger la base de données), et tu affiches aussi manuellement les données. Le mieux, c'est de créer un script PHP à exécuter en ligne de commande. C'est plus simple, puisque tu mets sommairement en page.

Après ça tu peux t'attaquer à la récupération des données dans la base de données. Tu écris une classe de contrôle, qui va te permettre de requêter la base, et d'utiliser les résultats pour nourrir tes objets métier.

Une fois que ça marche, il te suffit d'écrire les classes qui te permettent d'afficher les objets métiers, et d'adapter le contrôleur pour qu'il fournisse à la vue les objets métiers qu'elle doit afficher.

Si vraiment tu n'arrive pas encore à penser objet, ce n'est pas grave. Tu peux faire quelque chose d'équivalent en procédural.

L'important c'est de bien tout séparer, et de gérer les erreurs possibles. Ça signifie qu'il faut que tu relises la documentation des fonctions que tu utilises, et que tu vérifie les erreurs qu'il faut gérer.
Sinon, tu pourras poster autant que tu voudras, on ne pourra pas t'aider sans messages d'erreur.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/07/2008 à 09:03
Script News...lire la suite
Je proposes les deux versions suivantes :

<?php
function cut_delimited_string($string, $size, $delimiter="\s")
{
if($len = strlen($string) > $size)
{
$last = $string{$size - 1} ;
while($string{$last} != $delimiter and $last > -1)
$last-- ;

$shorter = $last == -1
? substr($string, 0, $size)
: substr($string, 0, $last) ;
}
else
{
$shorter = $string ;
}

return $shorter ;
}
?>


Et si on veut passer par une expression régulière :

<?php
function cut_word_delimited_string($string, $size)
{
if($len = strlen($string) > $size)
{
if(preg_match("@^.{,".$size."}\>@", $string, $matches) > 0)
$shorter = $matches[0] ;

if(strlen($shorter) == 0)
$shorter = substr($string, 0, $size) ;
}
else
{
$shorter = $string ;
}

return $shorter ;
}
?>
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/07/2008 à 04:57
Classe FTP
C'est surtout que si tu décides de passer à cURL, tu n'auras qu'à dériver la classe ;)

J'ai du mal à accepter la documentation détaillée en tête de source. Sale habitude de codeur C ;) J'ai l'habitude d'avoir un synopsis en tête, puis que chaque fonction (ou prototype de fonction) soit documentée. Ça permet de conserver une meilleure cohérence dans les commentaires.

Sinon, j'ai aussi un problème avec la fonction membre set_mode. J'aurais préféré des fonctions qui permettent de commuter de l'ascii au binaire (set_ascii, set_binary), sans compter qu'à la lecture, sans regarder la documentation (qui est trop loin et noyée dans un pavé de commentaire ;) ), je croyais que c'était la commande pour passer aux modes passif ou actif :D

À part ça je ne vois pas de problème particulier.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/07/2008 à 04:47
feuilles de calculs Excel
Il faudrait préciser la version d'Excel avec laquelle ta classe est compatible. Ça m'étonnerait que MS Excel 95 le comprenne ^^;

Ce qui serait sympa, c'est d'utiliser l'API DOM pour gérer le document Excel. Histoire de ne pas avoir toutes ces valeurs par défaut horribles ;)
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 18/07/2008 à 04:39
Script colore
Attention, concours de celui qui a la plus petite !

<?php

$values = range(0x0, 0xF) ;
$stack = array() ; // reach ~1.6MB

foreach($values as $first)
{
$list = array() ;

foreach($values as $second)
foreach($values as $third)
$list[] = array($first,$second,$third) ;

$stack[] = $list ;
}

echo "<table>\n" ;
echo "\t<tbody>\n" ;

foreach($stack as $row)
{
echo "\t\t<tr>\n" ;
foreach($row as $cell)
{
$color = sprintf("%X%X%X", $cell[0], $cell[1], $cell[2]) ;
printf("\t\t\t<td style=\"background-color: #%1\$s;\">#%1\$s</td>\n",
$color);
}
echo "\t\t</tr>\n" ;
}

echo "\t</tbody>\n" ;
echo "</table>\n" ;

$stack = null ;

?>


Au fait, pourquoi rajoutes-tu un carriage return (\r) ? C'est inutile.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LoadingChargement en cours