Textarea + insertion sql

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Textarea + insertion sql

Re: Textarea + insertion sql

par stealth35 » 19 avr. 2010, 22:58

Le dernier site que j'ai développé devait être compatible avec les anciens navigateurs FF 2.0 et IE6 et dans ces cas là c'est un peu la galère... #-o
mon pauvre :priere:

Re: Textarea + insertion sql

par AB » 19 avr. 2010, 22:42

Et qu'on me le dise si je me trompe, foreach avance le pointeur du tableau mais modifier les valeurs $key et $value n'a pas d'influence sur le tableau (enfin ça, ca me semblait logique, mais peut-être pas si logique apparemment ;)).

Souhaitez-moi bonne chance je commence ma formation XHTML CSS demain ;)
Ben comme indiqué dans la doc tu peux modifier les valeurs si tu la assigne la valeur par référence avec le &.

Disons que le foreach est pratique puisque c'est la fonction spécifique pour lister les tableaux. Cela t'évite un count() par rapport à ta méthode.
J'ai juste pensé que tu avais fait une petite immersion dans javascript car ta méthode est celle utilisée en js et qu'il n'y a pas cette fonction spécifique comme en php. D'ailleurs comparé à php les fonctions javascript disponibles pour traiter les tableaux sont peu nombreuses (mais on s'arrange).

Alors donc c'est dans XHTML CSS que tu va te plonger demain... donc bonne chance :)
C'est intéressant et ce ne serait pas compliqué si ce langage de description ne dépendait pas des navigateurs, ou plutôt si les navigateurs implémentaient correctement les normes du w3C. Le dernier site que j'ai développé devait être compatible avec les anciens navigateurs FF 2.0 et IE6 et dans ces cas là c'est un peu la galère... #-o

Re: Textarea + insertion sql

par devlop78 » 19 avr. 2010, 22:24

Oui mais pas "nativement". sinon un $machin[$key] = htmlentities($value); fonctionne aussi. Mais là on chipote quand même ^^

Re: Textarea + insertion sql

par stealth35 » 19 avr. 2010, 22:18

si tu peu modifier les valeur en passant par référence avec "&"

Re: Textarea + insertion sql

par devlop78 » 19 avr. 2010, 22:12

Bien que le tableau soit référencé , foreach travaille sur une copie du tableau spécifié, et pas sur le tableau lui-même. Par conséquent, le pointeur de tableau n'est pas modifié, comme il le serait avec le fonction each , et les modifications faites dans le tableau ne seront pas prises en compte dans le tableau original. Cependant, le pointeur interne du tableau original est avancé avec le traitement du tableau. En supposant sur la boucle foreach effectue tout le traitement, le pointeur interne du tableau sera à la fin du tableau
Autant pour moi, effectivement. Lorsque j'ai repris la programmation, le premier truc que j'ai vu était each avec le magnifique list(). Autant dire que foreach est plus intuitif. Je reste toutefois relativement sur mes positions pour le for qui ne fait de mal à personne ;) sans toutefois enlever le mérite qu'à foreach. Et qu'on me le dise si je me trompe, foreach avance le pointeur du tableau mais modifier les valeurs $key et $value n'a pas d'influence sur le tableau (enfin ça, ca me semblait logique, mais peut-être pas si logique apparemment ;)).

Souhaitez-moi bonne chance je commence ma formation XHTML CSS demain ;)

Re: Textarea + insertion sql

par devlop78 » 19 avr. 2010, 22:04

C'est vraiment si compliqué for ? :shock: sans oublié que for() ne déplace pas le curseur ... donc dans ton code tu as oublié la fonction pour remettre le curseur au début ... au final c'est pas plus compliqué ...
Non c'est pas que c'est compliqué, c'est juste que c'est plus simple de faire avec foreach quand c'est possible.
Enfin bon c'était juste une remarque en passant :wink:

Sinon, non dans mon code je n'ai rien oublié :
Lorsque foreach démarre, le pointeur interne de fichier est automatiquement ramené au premier élément du tableau. Cela signifie que vous n'aurez pas à faire appel à reset() avant foreach.

Hmmm ... alors ce n'est pas foreach que j'ai du utilisé il y a quelques semaines et qui m'a posé des problèmes ... il ne remettait pas le pointeur au début.

Re: Textarea + insertion sql

par AB » 19 avr. 2010, 19:17

C'est vraiment si compliqué for ? :shock: sans oublié que for() ne déplace pas le curseur ... donc dans ton code tu as oublié la fonction pour remettre le curseur au début ... au final c'est pas plus compliqué ...
Non c'est pas que c'est compliqué, c'est juste que c'est plus simple de faire avec foreach quand c'est possible.
Enfin bon c'était juste une remarque en passant :wink:

Sinon, non dans mon code je n'ai rien oublié :
Lorsque foreach démarre, le pointeur interne de fichier est automatiquement ramené au premier élément du tableau. Cela signifie que vous n'aurez pas à faire appel à reset() avant foreach.

Re: Textarea + insertion sql

par stealth35 » 19 avr. 2010, 18:46

non j'utilise foreach pour les tableaux associatifs ... sinon un bon for () pour les incrémenter. L'avantage c'est pas mal lorsqu'il faut comparer des lignes entre elles. C'est vraiment si compliqué for ? :shock: sans oublié que for() ne déplace pas le curseur ... donc dans ton code tu as oublié la fonction pour remettre le curseur au début ... au final c'est pas plus compliqué ...
pour se cas la oui c'est plus compliquer, d'ailleur vu qu'on est sur mysqli, on peux en profiter pour faire une requête préparer qui sera plus optimiser
$stmt = $mysqli->prepare("INSERT INTO .... ?");

foreach($textarea_cuted  as $value)
{
    $stmt->bind_param("s",  $value);
    $stmt->execute();
}

Re: Textarea + insertion sql

par devlop78 » 19 avr. 2010, 18:17

non j'utilise foreach pour les tableaux associatifs ... sinon un bon for () pour les incrémenter. L'avantage c'est pas mal lorsqu'il faut comparer des lignes entre elles. C'est vraiment si compliqué for ? :shock: sans oublié que for() ne déplace pas le curseur ... donc dans ton code tu as oublié la fonction pour remettre le curseur au début ... au final c'est pas plus compliqué ...

Re: Textarea + insertion sql

par AB » 19 avr. 2010, 17:56

$textarea_cuted = explode ("\n",$textarea);
$tx_c = count($textarea_cuted);
for ($i=0;$i<$tx_c;$i++) {
$mysqli->query("INSERT INTO ..." . $textarea_cuted[$i]);
}

Voilà c'est une idée de base à travailler selon les besoins
Juste une remarque au passage tu te complique un peu la vie pour lister ton tableau, non ?
foreach($textarea_cuted as $value)
{
$mysqli->query("INSERT INTO ..." . $value);
}
Peut-être as tu fais une immersion dans javascript récemment et tu a oublié toute la puissance de php pour manipuler les tableaux ?

Re: Textarea + insertion sql

par devlop78 » 19 avr. 2010, 15:46

Tu as dit pc ...

donc Windows (ou Linux ... ;))

$bad = array ("\r\n","\r");
$textarea = str_replace ($bad,"\n",$textarea);

$textarea_cuted = explode ("\n",$textarea);
$tx_c = count($textarea_cuted);
for ($i=0;$i<$tx_c;$i++) {
$mysqli->query("INSERT INTO ..." . $textarea_cuted[$i]);
}

Voilà c'est une idée de base à travailler selon les besoins

Textarea + insertion sql

par bricedesardennes » 19 avr. 2010, 15:33

Bonjour,

j'utilise un textarea pour entrer une série de codes divers en passant à la ligne avec la touche "enter" de mon pc.

Donc, 1 code par ligne.

J'essaie en vain d'insérer en bdd chaque enregistrement (1 code du textarea = 1 ligne en bdd et ainsi de suite..)

Pourriez vous m'aidé svp, je patauge complêtement :-(