Bonjour,<br />

Comme j'ai des problème dans mon dev j'ai changer de direction, j'ai crée la valeur min et max dans ma bdd .<br />

Mais quant j'ai crée mon formulaire avec la demande d'un budget on peux cocher plusieurs choix de budget de 1-3 de 3_6 de 6-9 etc...
Cela donne dans ma table<br />

budget <br />
1-3<br />
budget_1 <br />
3_6 <br />
budget_2 <br />
6-9 <br />
budget_3<br />
9-12 ...... <br />

Quant on crée une fiche client je recuperer le information du budget, ou je cherche son min et son max.
budget_min <br />
1-3 <br />
budget_max <br />
9-12<br />

Je voudrai recuperer la valeur MAX et MIN sur plusieurs column, mais cela ne fonctionne pas. je n'arrive pas a récuperer son max et son min et a l'écrire dans la bonne column budget_min et budget_max.<br />

je fait cela :<br />
........<br />
$budget = trim($_POST['budget']);<br />
$budget_1 = trim($_POST['budget_1']);<br />
$budget_2 = trim($_POST['budget_2']);<br />
$budget_3 = trim($_POST['budget_3']);<br />
$budget_4 = trim($_POST['budget_4']);<br />
$budget_5 = trim($_POST['budget_5']);<br />
$budget_6 = trim($_POST['budget_6']);<br />
$budget_7 = trim($_POST['budget_7']);<br />
$budget_8 = trim($_POST['budget_8']);<br />
$budget_9 = trim($_POST['budget_9']);<br />
$budget_10 = trim($_POST['budget_10']);<br />
$budget_11 = trim($_POST['budget_11']);<br />
........<br />
$valmin = min(array($budget, $budget_1, $budget_2, $budget_3, $budget_4, $budget_5, $budget_6, $budget_7, $budget_8, $budget_9, $budget_10, $budget_11,));<br />
<br />
$sql='UPDATE db_purchaser SET budget_min=$val_min WHERE id_custo='. $_GET['id_custo'] .'';
$pdo->exec($sql);
<br />
pour le max
<br />
$val_max = max(array($budget, $budget_1, $budget_2, $budget_3, $budget_4, $budget_5, $budget_6, $budget_7, $budget_8, $budget_9, $budget_10, $budget_11,));
<br />
$sql1='UPDATE db_purchaser SET budget_max=$val_max WHERE id_custo='. $_GET['id_custo'] .'';<br />
$pdo->exec($sql1)<br />
<br />
.......................<br />

j'ai pas tous mie le code.<br />

merci de votre aide.<br />

7 réponses


azizs
Auteur
Réponse acceptée

Déjà merci pour l'information.

Pour mon problème il est resolut la solution était.

<?php
header('Content-Type: text/plain');

$buffer   = array(null, budget,budget_1, budget_2, budget_3);
$filtered = array_diff($buffer, array(null, 0));

$max = max($filtered);
$min = min($filtered);

var_dump($max, $min);
?>

Merci a vous

azizs
Auteur

J'ai fait cela
quant je teste :
select MAX(greatest (budget, budget_1, budget_2, budget_3, budget_4, budget_5, budget_6, budget_7, budget_8, budget_9, budget_10, budget_11)) FROM db_purchaser WHERE id_custo=8
cela fonctionne très bien mais quant je met cela en php :
<br />
$bud_max ='select MAX(greatest (budget, budget_1, budget_2, budget_3, budget_4, budget_5, budget_6, budget_7, budget_8, budget_9, budget_10, budget_11)) FROM db_purchaser WHERE id_custo='. $_GET['id_custo'] .' ';
<br />
$sql2 =$pdo->prepare('UPDATE db_purchaser SET budget_max = :bud_max WHERE id_custo ='. $_GET['id_custo'] .'');
$sql2->execute(array('budget_max' => $bud_max));
J'ai le champ vide le budget_max de ma column

Et en MIN cela ne focntionne pas :
select MIN(greatest (budget, budget_1, budget_2, budget_3, budget_4, budget_5, budget_6, budget_7, budget_8, budget_9, budget_10, budget_11)) FROM db_purchaser WHERE id_custo=8
Le resultat est le meme quant MAX

Merci de m'aider

azizs
Auteur

Pouvez-vous m'aider j'arrive pas a trouver de solution.
Je voudrai récupérer le MAX et le MIN d'un id sur plusieurs champs.

exemple
id=8
Il a comme
<b>budget</b> 800
<b>budget_1 </b> 900
<b>budget _2 </b> 1800
<b>budget _3 </b> 2800
<b>budget _4 </b> 0
<b>budget _5 </b> 0

je voudrais récupérer son min 800 et son max 2800
et les écrire dans le column
<b>budget_min </b> 8000
<b>budget_max</b> 2800

Et après je pourrais réaliser mon moteur de recherche.
Merci a vous.

azizs
Auteur

Bonsoir,
y a t il quelqu'un qui peux m'aider SVP.

Merci,

azizs
Auteur

Il y a personne j'ai besoin d'aide merci a vous,

Je voudrai extraire le max et le min de plussieur column, et ecrire ces chiffres dans un autre column merci de votre aide.

Merci a vous,

azizs
Auteur

Bonsoir,

J'ai bien avancer maein encors quelque problème voilà mon code
.........

$max = max($budget, $budget_1, $budget_2, $budget_3, $budget_4, $budget_5, $budget_6, $budget_7, $budget_8, $budget_9, $budget_10, $budget_11);

$sql3 ='UPDATE db_purchaser SET budget_max='. $max .' WHERE id_purchaser='. $_GET['id_purch'] .' ';
$pdo->exec($sql3);

$min = min(array($budget, $budget_1, $budget_2, $budget_3, $budget_4, $budget_5, $budget_6, $budget_7, $budget_8, $budget_9, $budget_10, $budget_11));

$min = min(array($budget_11, $budget_10, $budget_9, $budget_8, $budget_7, $budget_6, $budget_5, $budget_4, $budget_3, $budget_2, $budget_1, $budget));

$sql4 ='UPDATE db_purchaser SET budget_min='. $min .' WHERE id_purchaser='. $_GET['id_purch'] .' ';
$pdo->exec($sql4);
.......

mon problème est que le budget et en IN et null dans ma BDD quant je fait mon teste il m'ecris 0 ou null le plus petiti chiffre( j'ai faity le teste avec les deux variable).
Je voudrais dire en php que 0 ou Null est pas mon resultat est qu'il récupere le chiffre le plus petit.

Merci de votre aide.

Bonjour.
Commences déjà par mettre le code PHP dans la balise code s'il te plaît.
Si tu n'as plus accès aux boutons, il te suffit de faire comme ceci :
```
Ton code PHP
```
Touche 7 pour les ```.
Merci.