Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2782 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Suri's faq: question4b: C quoi Cron?

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

[PHP] Suri's faq: question4b: C quoi Cron?

n°317355
Suri
Darksurious
Posté le 25-02-2003 à 13:30:15  profilanswer
 

  • Question 1:

en fait je voudrais remplacer tous les [b ]*[/b ] par <b>*</b>  
donc si ya qu'une balise b ca marche avec ca: "\[b\](.*)\[\/b\]"  
mais quand yen a plusieurs faut un truc du genre... et j'arrive pas a passer une chaine derriere ^ ...:  
\[b\](^"\[b\]"*)\[\/b\]  
 

Réponse1 :
preg_replace("/\[b\](.*?)\[\/b\]/s", "<b>\\1</b>", $chaine);

Citation :

By default, a quantified subpattern is "greedy", that is, it will match as many times as possible (given a particular starting location) while still allowing the rest of the pattern to match. If you want it to match the minimum number of times possible, follow the quantifier with a "?". Note that the meanings don't change, just the "greediness":
 
    *?    Match 0 or more times
    +?    Match 1 or more times
    ??    Match 0 or 1 time
    {n}?   Match exactly n times
    {n,}?  Match at least n times
    {n,m}? Match at least n but not more than m times    
 


 
 
----------------------------------------
 

  • Question 2:

bon encore un pb de regexp qui me prend la tete depuis hier:
je remplace les : ), : /, : ( par des images de smiley, jusque la c bon, par ailleurs, je remplace les http://blablabla par des balises <a>.. la aussi ca va, le pb c quand les deux sont combinés... evidemment mon smiley : / va matcher ds les urls aussi... :(
Donc je suis en fait toujours plus ou moins sur le pb de la question 1 ou comment dire: matche ce qui ne commence pas par telle chaine...
actuellement ma regexp c ca:
$str = eregi_replace("http:\/\/([^\t\[ ]*)", "<a target=\"_blank\" class=\"text_xsmall\" href=\"http://\\1\">http://\\1</a>", $str);
mais ces messieurs les smileys sont passés avant:
$str = str_replace($smiley->smiley_code, "<img src=\"".$smiley->smiley_url."\" border=0> ", $str);

 
Reponse2:
verifier si le smiley n'est pas précédé de p et suivit de /  
 
----------------------------------------
 

  • Question 3:

j'y comprend plus rien ds mes cookies la...
je le crée comme ca: setcookie("ck_login", $login, time()+3600);
il est bien créé (je verifie avec getallheaders())
par contre, si je fais print $HTTP_COOKIE_VARS['ck_login']; ds une fct ca marche pas...  et le plus bizarre c que print $ck_login marche lui :o

 
Reponse3
déclarer le $_COOKIE en tant que variable globale dans la fonction :
http://www.php.net/manual/fr/langu [...] .scope.php
 
----------------------------------------
 

  • Question 4:

Du SQL cette fois....:
j'aimerais faire un truc du genre:
UPDATE matable SET champ=1 WHERE plop=31
             and SET champ=2 WHERE plop=53
 
jsuis obligé de faire deux requetes update? :/
 
merci
 :jap:


Message édité par Suri le 10-03-2003 à 10:36:23

---------------
Suri.morkitu.org : Balades au coeur de la ville...
mood
Publicité
Posté le 25-02-2003 à 13:30:15  profilanswer
 

n°317364
gm_superst​ar
Appelez-moi Super
Posté le 25-02-2003 à 13:37:14  profilanswer
 

preg_replace("/\[b\](.*?)\[\/b\]/s", "<b>\\1</b>", $chaine);


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°317370
kadreg
profil: Utilisateur
Posté le 25-02-2003 à 13:40:21  profilanswer
 

et si on ecrit comme ça, ça marche ?


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°317373
drasche
Posté le 25-02-2003 à 13:40:58  profilanswer
 

j'ai intérêt à m'accrocher moi  :ouch:  
 
bon ben je vais aller relire ma doc, ça m'apprendra à décrypter le truc ;)
 
(oui j'avoue que le sujet m'intéressait :whistle:)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°317377
gm_superst​ar
Appelez-moi Super
Posté le 25-02-2003 à 13:47:07  profilanswer
 
n°317393
Suri
Darksurious
Posté le 25-02-2003 à 14:08:41  profilanswer
 

bah oui ca marche merci :jap:
mais je capte pas ce qu'est censé remplacer le "?" ?? (ds ce cas la)


Message édité par Suri le 25-02-2003 à 14:12:21

---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°317394
daique
Posté le 25-02-2003 à 14:10:16  profilanswer
 

pour ceux qui veulent un peu d'explications sur les perl regexp : http://www.perl-gratuit.com/cgi-bi [...] erlre.html

n°317450
beleg
黑社會
Posté le 25-02-2003 à 14:53:17  profilanswer
 

http://www.php.net/manual/fr/pcre.pattern.syntax.php
http://www.perldoc.com/perl5.6/pod [...] xpressions
 
? c pour la greediness, voir deuxieme lien


Message édité par beleg le 25-02-2003 à 14:53:49
n°317457
Suri
Darksurious
Posté le 25-02-2003 à 14:58:51  profilanswer
 


aah merci... jsavais meme pas qu'on pouvait combiner * + et ? comme ca [:splinter]  
:jap:


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°317795
kadreg
profil: Utilisateur
Posté le 25-02-2003 à 21:29:42  profilanswer
 


 
 \o/ merci


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
mood
Publicité
Posté le 25-02-2003 à 21:29:42  profilanswer
 

n°317807
daique
Posté le 25-02-2003 à 21:41:24  profilanswer
 

kadreg a écrit :


 
 \o/ merci


 
rhoooo, enfin un slip propre pour rincevent, les fans l'attendaient avec impatience

n°318182
Suri
Darksurious
Posté le 26-02-2003 à 11:39:50  profilanswer
 

  • Question 2:


bon encore un pb de regexp qui me prend la tete depuis hier:
je remplace les : ), : /, : ( par des images de smiley, jusque la c bon, par ailleurs, je remplace les http://blablabla par des balises <a>.. la aussi ca va, le pb c quand les deux sont combinés... evidemment mon smiley : / va matcher ds les urls aussi... :(
Donc je suis en fait toujours plus ou moins sur le pb de la question 1 ou comment dire: matche ce qui ne commence pas par telle chaine...
actuellement ma regexp c ca:
$str = eregi_replace("http:\/\/([^\t\[ ]*)", "<a target=\"_blank\" class=\"text_xsmall\" href=\"http://\\1\">http://\\1</a>", $str);
mais ces messieurs les smileys sont passés avant:
$str = str_replace($smiley->smiley_code, "<img src=\"".$smiley->smiley_url."\" border=0> ", $str);


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°318379
Suri
Darksurious
Posté le 26-02-2003 à 14:46:45  profilanswer
 
n°318472
gm_superst​ar
Appelez-moi Super
Posté le 26-02-2003 à 15:52:57  profilanswer
 

Il faut modifier tes codes de smileys. En gros il faut lui dire de ne pas remplacer le ":/" s'il est précédé (ou suivi) d'un caractère qui n'est pas un espace.
En clair, il faut remplacer si tu tombes sur " :/" ou un :/ en début de ligne.


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°318557
Suri
Darksurious
Posté le 26-02-2003 à 16:51:07  profilanswer
 

gm_superstar a écrit :

Il faut modifier tes codes de smileys. En gros il faut lui dire de ne pas remplacer le ":/" s'il est précédé (ou suivi) d'un caractère qui n'est pas un espace.
En clair, il faut remplacer si tu tombes sur " :/" ou un :/ en début de ligne.


 
oui merci en fait je verifie si le smiley n'es pas  precede de p et suivit de /
;)


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°319905
Suri
Darksurious
Posté le 27-02-2003 à 23:35:05  profilanswer
 

Question 3:
 
j'y comprend plus rien ds mes cookies la...
je le crée comme ca: setcookie("ck_login", $login, time()+3600);
il est bien créé (je verifie avec getallheaders())
par contre, si je fais print $HTTP_COOKIE_VARS['ck_login']; ca marche pas... (alors que j'ai tjs fait comme ca, ca marchait bien) et le plus bizarre c que print $ck_login marche lui :o
bon moi je veux bien.. mais ca peut pas poser un pb de sécu? de plus, si le register_globals est sur off je suppose que ca ne marchera plus... :/
 


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°319913
gm_superst​ar
Appelez-moi Super
Posté le 27-02-2003 à 23:43:50  profilanswer
 
n°319920
Suri
Darksurious
Posté le 27-02-2003 à 23:55:15  profilanswer
 

gm_superstar a écrit :

$_COOKIE["ck_login"] :??:


ben c la meme chose que $HTTP_COOKIE_VAR[]...
 
mais c bon... je viens enfin de trouver apres bien 2h de recherche ds le vide..
je faisais un test d'une variable cookisée ds une fct... maintenant que je le fait plus dans une fct mais direct ds la page ca marche normalement...
ca reste bizarre... :heink:
 
edit: si si j'ai dit... qd j'appelle mon test de variable via une fct ca marche plus:
details:
entete.php inclu ds mes pages, je met ca:
$var = 0
if ($_COOKIE["ck_login"] == "toto" )
  $var = 1;
ca marche.
 
si je fais:
 
$var = is_user();
print $var; // vaut toujours 0
 
avec is_user()
{
$var = 0
if ($_COOKIE["ck_login"] == "toto" )
  $var = 1;
return $var;
}


Message édité par Suri le 28-02-2003 à 00:08:35

---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°319931
Suri
Darksurious
Posté le 28-02-2003 à 00:08:06  profilanswer
 

d'ou ma question, comment ca se passe en fait au niveau des include. car en gros:
 
index.php:
 include(fct_user.php); // qui contient is_user();
 include(entete.php) qui appelle is_user();
 suite...
 
pourtant entete executait bien is_user... mais merdait ds le test du cookie... c tres tres trouble... :/


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°319955
beleg
黑社會
Posté le 28-02-2003 à 01:03:35  profilanswer
 

rien a voir avec les includes, c la portée des variables quil faut etudier

n°320003
gm_superst​ar
Appelez-moi Super
Posté le 28-02-2003 à 09:25:46  profilanswer
 

Oui exact, tu dois déclarer ton $_COOKIE en tant que variable globale dans ta fonction :
 
http://www.php.net/manual/fr/langu [...] .scope.php


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°320143
Suri
Darksurious
Posté le 28-02-2003 à 12:43:30  profilanswer
 

gm_superstar a écrit :

Oui exact, tu dois déclarer ton $_COOKIE en tant que variable globale dans ta fonction :
 
http://www.php.net/manual/fr/langu [...] .scope.php


ah bah voila! merci bien :)
je pensais que les variables d'env, get etc.. ne pouvaient pas etre redefinies en local..


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°327681
Suri
Darksurious
Posté le 09-03-2003 à 20:11:04  profilanswer
 

up :D
 

  • Question 4:

Du SQL cette fois....:
j'aimerais faire un truc du genre:
UPDATE matable SET champ=1 WHERE plop=31
             and SET champ=2 WHERE plop=53
 
jsuis obligé de faire deux requetes update? :/

n°327976
mrbebert
Posté le 10-03-2003 à 00:48:57  profilanswer
 

oui, je pense qu'il faut 2 requêtes [:proy]  
 
A moins de bidouiller un truc pas propre du tout, du genre :
UPDATE matable SET champ = 1 + (plop = 53) WHERE plop=31 OR plop=53

n°327977
the real m​oins moins
Posté le 10-03-2003 à 00:52:05  profilanswer
 

gm_superstar a écrit :

Oui exact, tu dois déclarer ton $_COOKIE en tant que variable globale dans ta fonction :
 
http://www.php.net/manual/fr/langu [...] .scope.php

ou le passer à la fonction, ce qui selon moi serait plus propre :o


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°327979
Suri
Darksurious
Posté le 10-03-2003 à 00:53:32  profilanswer
 

en fait, jvais exposer directement mon pb ca sera plus simple :D
gestion de messages privés
le contexte:
1 table topic_pm (topic_id, nom_auteur, nom_destinataire, suppr_by_auteur, suppr_by_dest,...)
1 table message_pm (topic_fk_id, post_id, auteur etc...)
 
Si une des deux personnes concernées par le msg privé suppr le topic, ca met son flag (suppr_by_auteur ou suppr_by_dest suivant qui il est) a 1.... et j'affiche que les topic ou ses flags sont a 0.
je peux pas faire de DELETE vu qu'il faut que l'autre personne puisse voir le message.
Le truc c que une fois que les deux flags sont a 1, je dois supprimer a la fois le topic de la table mais aussi les messages associés a ce topic dans l'autre table.
 
ya la methode sauvage de parcourir tout les topic pm de la personne est verifier si c les deux flag sont a 1, a ce moment, on supprime le topic et les messages vu qu'on connait le numero du topic mais bon, ca fait bcp de requetes pour pas grand chose et je trouve ca trop porc :/
 
edit: j'ai vraiment pas l'impression d'etre clair [:sisicaivrai]


Message édité par Suri le 10-03-2003 à 00:54:49

---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°327980
the real m​oins moins
Posté le 10-03-2003 à 00:56:04  profilanswer
 

delete from latable where topicid=x and flag1=1 and flag2=1 [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°327981
Suri
Darksurious
Posté le 10-03-2003 à 01:02:08  profilanswer
 

the real moins moins a écrit :

delete from latable where topicid=x and flag1=1 and flag2=1 [:spamafote]


 
ouais mais les messages :o
vu que j'ai plein de topic deletables en meme tps c ds une boucle donc:
DELETE from topic_pm where flag1=1 and flag2=2 and (topicid=1 OR topicid=2 Or ....)
 
seulement apres, pour ma table des message, comment je sais quels topics ont été supprimés moi? [:huit] (c forcement le topic1 et/ou le topic2 et/ou.. mais faut aussi que la condition des flags soit validés... faudrait faire une jointure sur un DELETE [:meganne]  :whistle: )


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°327982
the real m​oins moins
Posté le 10-03-2003 à 01:09:38  profilanswer
 

si le delete du topic retourne 1 (ça veut dire que le topic a été deleté) tu peux deleter les messages correspondant  
 
sinon tu peux deleter en asynchrone, avec un cron par exemple, qui lui prendra le temps de bien regarder ce qu'il peut deleter ou pas  [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°327983
mrbebert
Posté le 10-03-2003 à 01:10:39  profilanswer
 

Tu peux faire une boucle :
SELECT topic_id FROM topic_pm WHERE ...    // selection des topics à supprimer
...
while ($r = mysql_fetch_array(...)) {
    DELETE FROM message_pm WHERE topic_fk_id = $r['topic_id']
}


Message édité par mrbebert le 10-03-2003 à 01:14:06
n°327984
the real m​oins moins
Posté le 10-03-2003 à 01:11:36  profilanswer
 

j'ai pas bien suivi mais je vois pas pourquoi vous voulez faire une boucle :heink:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°327987
mrbebert
Posté le 10-03-2003 à 01:15:08  profilanswer
 

the real moins moins a écrit :

j'ai pas bien suivi mais je vois pas pourquoi vous voulez faire une boucle :heink:

Il peut avoir plusieurs topics supprimables en même temps [:proy]

n°327988
Suri
Darksurious
Posté le 10-03-2003 à 01:20:19  profilanswer
 

the real moins moins a écrit :

j'ai pas bien suivi mais je vois pas pourquoi vous voulez faire une boucle :heink:


c le meme principe que les pm d'hfr... t'as tes topic/msg privé.. qd tu le veut plus ben tu suppr.. (case a cocher)
au moment de valider tu peux te retrouver avec plusieurs topics a supprimer...
 
en gros j'ai une seule requete pour deleter les topics mais N requetes pour deleter les messages liés a ces topics :/
 
(avant je deletais direct (pas de flag, un user deletais le topic meme si l'autre voulait pas/avait pas lu) j'avais donc deux requetes:
DELETE FROM topic_pm WHERE topic_id=1 OR topic_id=2 OR ...
et
DELETE FROM msg_pm WHERE topic_id=1 OR topic_id=2 OR ...
c'etait simple [:sisicaivrai])


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°327990
Suri
Darksurious
Posté le 10-03-2003 à 01:21:18  profilanswer
 

mrBebert a écrit :

Il peut avoir plusieurs topics supprimables en même temps [:proy]  


vi ca fait pas un peu lourd ca qd meme? :/
 


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°327991
mrbebert
Posté le 10-03-2003 à 01:30:19  profilanswer
 

En fait, je vois pas trop pourquoi il peut en avoir plusieurs à supprimer simultanément :??:


Message édité par mrbebert le 10-03-2003 à 01:30:32
n°327993
Suri
Darksurious
Posté le 10-03-2003 à 01:36:24  profilanswer
 

mrBebert a écrit :

En fait, je vois pas trop pourquoi il peut en avoir plusieurs à supprimer simultanément :??:


 
http://forum.hardware.fr/forum1.ph [...] &cat=prive
ya plein de pitites cases a cocher sur la droite... et un gros bouton valider
 
 
je m'explique si mal que ca? :D


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°327995
the real m​oins moins
Posté le 10-03-2003 à 01:52:39  profilanswer
 

ha ok
ben ouais alors
sinon si tu veux deleter QUE dans la table topic, avec mysql tu peux faire delete from machin where truc in (x, y, z) mais bon ça t'avance pas pour aller deleter dans ta table de messages apres :)


Message édité par the real moins moins le 10-03-2003 à 01:52:57

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°327996
mrbebert
Posté le 10-03-2003 à 02:02:05  profilanswer
 

the real moins moins a écrit :

ha ok
ben ouais alors
sinon si tu veux deleter QUE dans la table topic, avec mysql tu peux faire delete from machin where truc in (x, y, z) mais bon ça t'avance pas pour aller deleter dans ta table de messages apres :)

Il peut utiliser la même syntaxe avec les 2 tables.
- une requête qui recherche les topics ayant les 2 flags à 1
- construction de la liste à partir de ce résultat
- DELETE FROM topic_pm WHERE topic_id IN $la_liste
- DELETE FROM messages_pm WHERE topic_fk_id IN $la_liste
 
Ca fait 3 requêtes en tout, et ca peut passer dans un cron :)  

n°328101
Suri
Darksurious
Posté le 10-03-2003 à 10:28:12  profilanswer
 

mrBebert a écrit :

Il peut utiliser la même syntaxe avec les 2 tables.
- une requête qui recherche les topics ayant les 2 flags à 1
- construction de la liste à partir de ce résultat
- DELETE FROM topic_pm WHERE topic_id IN $la_liste
- DELETE FROM messages_pm WHERE topic_fk_id IN $la_liste
 
Ca fait 3 requêtes en tout, et ca peut passer dans un cron :)  
 


moui je vais faire comme ca :)
 
et heu... c koi au juste un cron? :whistle:  :??:


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°328107
Suri
Darksurious
Posté le 10-03-2003 à 10:39:02  profilanswer
 

bon j'ai trouvé :D
mais vous vouliez dire de faire la suppression de la table qu'a certains moments? (genre tout les soirs/tous les dimanches des trucs comme ca?)


---------------
Suri.morkitu.org : Balades au coeur de la ville...
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Suri's faq: question4b: C quoi Cron?

 

Sujets relatifs
PHP : Fction Mail et php.iniPHP : fction mail HTML et Images
[PHP] Pb de serialisation ...Pb de variables entre ActionScript et PHP
[PHP] Erreur sur compteur de téléchargement[PHP] Tronquer un fichier SQL
[PHP] Pb avec - setlocale -[PHP] récupérer l'adresse de la page actuelle
PHP + oracle8PHP GD, melanger 2 IMAGES, un PNG semi transparent et un PNG "normal"
Plus de sujets relatifs à : [PHP] Suri's faq: question4b: C quoi Cron?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR