variable dans une cellule

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 : variable dans une cellule

Re: variable dans une cellule

par xTG » 09 déc. 2012, 15:32

Je doute que tu trouves une personne qui ai le temps de te dépanner un code complet...
On est tous bénévoles sur nos temps libre ici.
Si tu n'es pas capable de te dépatouiller assez pour nous montrer un bout de code impliqué parmi la masse...

Re: variable dans une cellule

par lastnod » 08 déc. 2012, 21:47

J'ai énormément de mal à faire des tests j'aurai vraiment besoin d'aide en donnant mon code pour voir les modifications à apporter.

Re: variable dans une cellule

par xTG » 05 déc. 2012, 17:33

Voici un exemple pour la fonction récursive :
$tab = array(
  array( '00', '01', '02'),
  array( '10', '11', '12')
);
$index = array(1, 2);

function recursive($arrayVal, $array_index){
  if( empty($array_index) || empty($arrayVal) )
    return false; // l'un des deux tableau est vide
  // on dépile le premier index
  $index = array_shift($array_index);
  if( !isSet($arrayVal[$index]) )
    return false; // l'index n'existe pas
  if( !empty($array_index) ){
    return recursive($tab[$index], $array_index); // on réappelle pour l'index suivant
  }else{
    if( !empty($array_index) )
      return false; // il reste des index mais pas dans arrayVal
    else
      return $arrayVal[$index]; // on a trouvé notre valeur
  }
}

$ret = recursive($tab, $index);
var_dump($ret); // 12
A tester. :)

Re: variable dans une cellule

par xTG » 05 déc. 2012, 09:55

Gaaaah j'ai perdu mon long message à cause du proxy...

Bon plus le temps de rédiger un joli code donc j'explique le principe.
Tu explose ta chaîne pour dissocier les index (un explode sur le caractère '['), dans le premier index retourné tu auras le nom de la variable.
Et dans les autres les index avec le caractère ']' que tu peux supprimer.
Ensuite dans le principe tu appelles une fonction récursive qui va dépiler le tableau d'index.
Grosso-merdo :
recursive($tab, array(1, 2))
  recursive($tab[1], array(2) )
    => $tab[1][2]

Re: variable dans une cellule

par lastnod » 04 déc. 2012, 22:28

haaa xTG je suis content que quelqu'un daigne s’intéresser a mon cas.

si tu veux mon code entier, je peux te le passer.
en se qui concerne le contexte j'ai un tableau type excel fait avec un module AJAX qui s'apelle inlineMod
http://olance.developpez.com/articles/w ... #LII-2-d-i

peut être peut on prendre contact par mail si tu as des idées.

mon mail c'est [email protected]

Re: variable dans une cellule

par xTG » 04 déc. 2012, 21:42

Va falloir nous en dire plus sur ton contexte, car là en réfléchissant j'ai soit une usine à gaz de la mort qui tue soit une faille de sécurité énorme à te proposer...

variable dans une cellule

par lastnod » 04 déc. 2012, 19:46

alors j'ai un tableau de cellules dynamique et je récupère un
$_GET['valeur']
dans une variable $valeur.

Puis en déclarant une variable
$_SESSION['tab_ligne']
variable que je vais mettre dans $tab[][].

j'aimerai que quand le $_GET['valeur'] renvoit $tab[1][1], la cellule affiche se qui est dans la variable.

exemble: $tab[1][1] contient le chiffre 22

je veux que en tapant $tab[1][1] dans la cellule il m'affiche 22

voila la parti du code ou je pense que j'ai mon problème, il fonctionne mais pas pour se que je veux.
  if(!isset($_GET['champ']) or empty($_GET['champ']) or !isset($_GET['valeur']) or (empty($_GET['valeur']) and 
  ($_GET['valeur'] != 0)) or !isset($_GET['echap']) or empty($_GET['echap']) or
  !isset($_GET['id']))
  {
    print "Erreur dans les paramètres fournis";
    exit;
  }
  require('common-top.php');

  //Construction de la requète
  $champ  	= $_GET['champ'];   
  $valeur 	= $_GET['valeur'];// C'EST ICI QUE CA SE PASSE !!! faire un genre de echo de la valeur mais ji arrive pas
  $id			= $_GET['id'];
  $table = $_GET['table'];

  
  $sql = "UPDATE `" . $table . "` SET $champ=";
  
  //Il faut éventuellement formater la valeur fournie
  if($_GET['echap'] == "true")
  {
  	$valeur = mysql_real_escape_string($valeur);
  	$sql .= "'$valeur'"; //Concatene 2 chaine ensenble sql = sql + $valeur;
  }
  else
			///////gérer la multiplicité des tableaux
  	$sql .= $valeur;
	$sql .= " WHERE ID_ligne=$id";
  //Exécution de la requète
  	mysql_query($sql) or die("Erreur BDD : " . mysql_error());

  require('common-bottom.php');