Aller au contenu

sandrinoo

Hubmaster
  • Compteur de contenus

    172
  • Inscrit(e) le

  • Dernière visite

Messages postés par sandrinoo

  1. Bonjour à tous,

     

    c'est au sujet d'une simple addition avec des 0 devant de ce style :

    $var1=000005;
    $var2=006;
    
    echo $addition=$var1+$var2;

     

    Comment faire pour conserver tous les 0 devant dans la variable addition soit '000011'

    Bien sûr on y arrive avec un sprintf ou un str_pad mais il faut calculer à chaque fois le nombre qui a le plus grand nombre de chiffres avant et donc c'est un peu lourd.

     

    Quelqu'un sait si il n'y aurait pas un moyen plus léger ?

     

    Ca serait sympa, merci d'avance si quelqu'un voit

     

  2. Ah merci beaucoup Aenoa ! Super !

    Je n'avais pas pensé aux opérations d'affectation, que je n'ai jamais utilisé d'ailleurs => bien pratique.

     

    Juste une chose, la soustraction ne se fait pas dans le bon sens : ta réponse génère pour la soustraction un '1èrePosition-2èmePosition' alors que j'aurais voulu l'inverse '2èmePosition-1èrePosition'.

    C'est possible ça avec une modification simple ?

     

    Grand merci d'avance

     

  3. Bonjour à tous,

     

    J'ai une opération mathématique de ce style (chaque résultat étant utilisé dans le calcul suivant) :

     

    $res1=$nb[1]-$nb[0];
    $res2= $nb[2]-$res1;
    $res3= $nb[3]-$res2;
    $res4 etc...

     

    Comment fait on ce genre de chose dans une boucle for :

    for ($i=0;$i<strlen($nb)-1;$i++)
    
    {
    
    //quoi mettre ici ?
    
    }

     

     

    Pourriez-vous m'aider s'il vous plaît ?

     

    Je vous remercie d'avance pour votre réponse,

     

     

  4. Moi ce que j'aurais voulu c'est une fonction simple de comparaison du type :

     

    cmp($a,$b) {if($a[1]===$b[1]) return 0;return ($a[1]>$b[1])? -1 : 1;} puis usort($table,'cmp');

     

    Mais bien sûr pas celle-là qui sert à trier par ordre décroissant des valeurs numériques.

     

    C'est pas possible pour faire ce que je veux ?

  5. Merci beaucoup Blackpage mais je m'y prends comment pour remplir la fonction :

     

    sortmulti($table, ?, ?,?,?);

     

    désolée, mais je suis pas une pro du php (je bidouille encore en procédural plus rapide pour de petits sites)

     

    En plus il y aurait pas plus simple car si on utilise 2 foreach autant faire non ? :

     

    foreach($table as $item){
    	if ($item[1]=='appartement') {echo $item[1]; }}
    	foreach($table as $item){
    	if ($item[1]!='appartement') {echo $item[1]; }}

     

    Dis moi si je s-dis une bêtise ?

  6. Bonjour à tous,

    Quand je bloque depuis 2 heures, grrr... Voilà le souci, j'ai un array de ce type :

    $table = array(
    array(1,'hôtel','bleu'),
    array(2,'villa','jaune'),
    array(3,'appartement','rouge'),
    array(4,'appartement','rose'),
    array(5,'villa','vert')
    );

     

    Et je voudrais juste sortir en premier tous les 'appartement' (avec le reste laissé tel quel) soit comme ceci :

    Array
    (
        [0] => Array
            (
                [0] => 3
                [1] => appartement
                [2] => rouge
            )
    
        [1] => Array
            (
                [0] => 4
                [1] => appartement
                [2] => rose
            )
    
        [2] => Array
            (
                [0] => 1
                [1] => hôtel
                [2] => bleu
            )
    
        [3] => Array
            (
                [0] => 2
                [1] => villa
                [2] => jaune
            )
    
        [4] => Array
            (
                [0] => 5
                [1] => villa
                [2] => vert
            )
    
    )

     

    J'y arrive avec 2 foreach mais c'est un peu lourd et donc j'aurais aimé utilisé un truc plus simple comme une fonction de comparaison type cmp($a,$b)

    mais je n'y suis pas arrivée et rien trouvé sur internet non plus.

     

    Donc je me tourne en dernier recours vers Webmaster-Hub,

    Gros merci d'avance !

  7. Merci Dan, non ça ne fonctionne pas mais ce n'est pas de ta faute. Ce n'est pas le REPLACE qui doit causer un souci.

     

    J'ai découvert qu'il y a un problème en amont : je n'arrive pas à faire un select sur des champs de ma bd qui ont un espace ou un apostrophe.

    Un simple WHERE var = 'L'hermine' ou 'le chat' ne fonctionne pas, d'où mon interrogation :

    1/ Est-il conforme et sécure que dans ce champs de ma bd j'ai des espaces et des apostrophes (sans antislash par exemple) ?

    2/ et si c'est conforme on fait comment avec un simple WHERE var= pour y accéder ?

     

    Merci d'avance Dan,

  8. Hello à tous !

     

    je me bats depuis hier avec un truc qui me parait simple mais je ne comprends pas ce que je fais de mal.

     

    Voilà, j'ai une variable $var avec des tirets et dans ma base de données mysql j'ai les mêmes valeurs mais sans tiret (avec un espace à la place). Donc je pensais faire pour récupérer les données de la BD :

     

    SELECT var FROM bd WHERE REPLACE (var, '', '-')  = '$var'

     

    Mais ça ne fonctionne pas, j'ai pas le droit de faire ce genre de manip ?

     

    (Je précise que l'interclassement de ma BD est en utf8mb4_unicode_ci et que je me connecte à elle également en utf8mb4_unicode_ci avec un "mysqli_set_charset($con, "utf8mb4");")

  9. Oui, au début de mon htaccess j'ai ça :

     

    ErrorDocument 404 '404 htaccess'
    Options +FollowSymlinks
    RewriteEngine on
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
    RewriteRule ^.*$ https://www.%1%{REQUEST_URI} [L,NE,R=301]

     

    Et oui je suis passée de PC (ou j'ai créé le htaccess) à MAC il y a 1 an ?

  10. Oui ça c'est la première chose que j'avais faite faite au départ. J'ai quand même retesté maintenant comme tu me dis avec
    "RewriteRule ^news/$ /news.php [L]" AVANT "RewriteRule ^(.*)/$ /categorie.php?cat=$1 [L]" mais sans succès :

     

    - la page /news/ affiche en fait /categorie.php?cat=news

     

    Par contre si Je place un # devant "RewriteRule ^(.*)/$ /categorie.php?cat=$1 [L]" là ok ça marche pour /news/ (mais plus pour les catégories bien sûr).

     

    Bizarre non ??

  11. Bonjour à tou.te.s,

     

    J'ai dans mon htaccess un rewriting d'url comme ceci qui génère une url avec un slash de fin :

     

    RewriteRule ^(.*)/$ /categorie.php?cat=$1 [L]

     

    J'ai par ailleurs un autre fichier news.php dont je voudrais également que l'url soit aussi avec un slash de fin  "/news/"

     

    Mais bien sur ma réécriture d'url m'en empèche donc j'ai testé 3 essais d'exceptions mais sans succès :

    RewriteRule ^/news/ - [L]
    
    RewriteCond %{REQUEST_FILENAME} !^news/
    
    RewriteCond %{REQUEST_URI} !^/news/

     

    Je m'y prends mal, quel est le souci ? (je suis en mutu chez OVH).

     

    Merci d'avance si quelqu'un voit...

  12. Bon ben j'ai tenté avec ErrorDocument 404 http://www.tonsite.com/404.php en haut de fichier, mais c'est exactement la même chose (et puis ça ne me conviendrait pas car ça génère une 302 avant la 404).

     

    Pas de trace non plus de AllowOverride FileInfo dans mes logs d'Apache

    (mais j'ai encore pas ceux d'aujourd'hui, je les aurais demain mais je doute, j'irais voir lundi à tout hasard).

     

    En fait je pense que c'est pas possible avec mon serveur.

     

    Merci encore pour ta patience Dan et d'être toujours là quand j'en ai besoin !

    Te souhaite un excellent W-E !

     

     

  13. Ah d'accord ! oui c logique en plus.

    Mais non visiblement rien n'y fait Dan, j'ai placé ErrorDocument 404 /404.php en haut du fichier .htaccess tout en haut :

     

    - test avant Options +FollowSymlinks et RewriteEngine on

    - et test apres Options +FollowSymlinks et RewriteEngine on

     

    En prenant soin de vider cache à chaque fois : firefox toujours page blanche et chrome, 404 de chrome ;(

  14. 1/ Oui c'est exactement ce que je pensais, on peut pas tester l'existence. Mais je posais la question, on sait jamais...

    Je vais tenter de mettre dans le haut de mon fichier php une condition du style si $var.html n'existe pas > 404

    Merci Dan.

     

    2/ Par ailleurs, une dernière question que je me suis toujours posée, en lien avec ça :

     

    Dans mon .htaccess j'ai un "ErrorDocument 404 /404.php" qui fonctionne très bien (en redirigeant les 404 vers ma propre page 404.php) sauf pour : /fausse_url/

     

    C'est bien une 404, mais elle n'est pas redirigée vers la page 404.php (ca me donne sous firefox une page blanche, et sous chrome la 404 de chrome). C'est peut être que j'oublie un truc dans ma règle de réécriture non ?  :

     

    RewriteRule ^(.*)/$ /cat.php?cat=$1 [L]

     

  15. Du coup, comme j'ai pas eu de réponse, je sais pas si c possible :(

     

    Pour être plus claire, simplement :

    - avant mon .htaccess générait des urls en .html (url.html)
    - maintenant, après refonte, mon .htaccess génère des urls avec slash (/url/) et donc plus du tout de .html

     

    Voici ce que j'aurais aimé avoir :

    - les urls.html redirigés (en 301) UNIQUEMENT sur mes /urls/ qui existent (200) = pour récupérer les backlinks
    - MAIS les urls.html directement en 404 (sans passer par une 301 avant), dont les /urls/ n'existeraient pas en 200.

     

    Le problème est qu'actuellement, n'importe quel url.html tapée finit sur /url/. Et moi j'aurais voulu que les mauvaises urls html soit directement des 404.

     

    Le seul moyen que j'ai trouvé est d'écrire une par une, dans le htaccess, toutes les bonnes urls concernées, mais y-a-il un moyen moins rébarbatif ? Htaccess, php ? Sachant que je suis en Mutu chez Ovh.


    Dan, Désolée de revenir à la charge mais cette question occupe mon esprit...

×
×
  • Créer...