| Autor | Zpráva | ||
|---|---|---|---|
| tomas2245 Profil |
Zdravím, je možné dostať obsah z jedného foreach do druhého, bez toho aby sa ten obsah zduplikoval?
Kód: $cislo_objednavky = array();
$klucik = "";
foreach($_POST as $kluc => $obsah) {
if (strpos($kluc, 'cislo') === 0) {
if(!empty($_POST[$kluc])){
$klucik = substr($kluc, 5);
$klucik = mysqli_real_escape_string($pripoj,$klucik);
$cislo_objednavky[$klucik] = $obsah;
}
}
}
$cena_objednavky = array();
$klucik = "";
foreach($_POST as $kluc => $obsah) {
if (strpos($kluc, 'cena') === 0) {
if(!empty($_POST[$kluc])){
$klucik = substr($kluc, 4);
$klucik = mysqli_real_escape_string($pripoj,$klucik);
$cena_objednavky[$klucik] = $obsah;
}
}
}
foreach($cislo_objednavky as $kluc_objednavka => $obsah_objednavka){
//tu by som chcel mať aj obsah z foreach($cena_objednavky)
} |
||
| Tomášeek Profil |
tomas2245:
Proč tak složitě? Nech jeden foreach, radek 16 dej na radek 2, radek 25 dej pod radek 11 a mas hotovo. Radek 2 je zbytečný, na řádku 6 pracuj s proměnnou obsah. Radek 8 zahod, ten použij až někdy někde budeš sestavovat dotaz. |
||
| tomas2245 Profil |
Ďakujem krásne, funguje to super, ale ešte jedna otázočka keď je použitý jeden foreach dá sa ošetriť aj to aby výsledok $vratobjednavky nebol príklad:
cislo1cislo2 : cena1cena2 ale rozdelené na cislo1 : cena1 cislo2 : cena2 $cislo_objednavky = array();
$cena_objednavky = array();
foreach($_POST as $kluc => $obsah) {
if (strpos($kluc, 'cislo') === 0) {
if(!empty($_POST[$kluc])){
$klucik = substr($kluc, 5);
$cislo_objednavky[$klucik] = $obsah;
$test1 .= $kluc;
}
}
if (strpos($kluc, 'cena') === 0) {
if(!empty($_POST[$kluc])){
$klucik = substr($kluc, 4);
$cena_objednavky[$klucik] = $obsah;
$test2 .= $kluc;
}
}
}
$vratobjednavky = ''.$test1.' : '.$test2.'<br>'; |
||
| Tomášeek Profil |
#4 · Zasláno: 15. 5. 2019, 19:41:31
tomas2245:
Řiď se tím, co jsem psal. Stačí ti jeden strpos, jeden empty a dohromady asi 10 řádku kódu. O žádném spojováni stringu řec nebyla, nevím, kdes na ni přišel. |
||
| tomas2245 Profil |
#5 · Zasláno: 15. 5. 2019, 19:56:40
Nemôžem pracovať s $obsahom pretože $obsah je value inputov ktoré majú podobu:
Input 1: 140 Input 2: 114 preto tam mám dva strpos aby som potom vedel priradiť k danému $test svoju value z inputu |
||
| Tomášeek Profil |
#6 · Zasláno: 15. 5. 2019, 20:13:32
tomas2245:
Jo, to jsem přehlédl. Sorry jsem na tel. Je to easy, zkus se nad tím zamyslet. Možná i pojmenováním poli ve formu. |
||
| tomas2245 Profil |
nič mi nenapadá, vedel by niekto nejaké riešenie?
|
||
| tomas2245 Profil |
ono tie inputy vyzerajú takto:
<input type="text" name="cislo1" value="1"> <input type="text" name="cena1" value="14.00"> od 1 po 100 majú name..cislo2, cena2, cislo3, cena3 a by ma zajímalo či je možné nejak tie array potom priradiť k sebe aby neboli všetky spojené na jednej hromade ale patrilo cislo2 k cene2, cislo3 k cene3 a tak ďalej |
||
| Radek9 Profil |
tomas2245:
PHP podporuje tohle: <input type="text" name="cislo[1]" value="1"> <input type="text" name="cena[1]" value="14.00"> <input type="text" name="cislo[2]" value="123"> <input type="text" name="cena[2]" value="123456.00"> ... if (isset($_POST['cislo'])) {
$objednavky = array();
foreach ($_POST['cislo'] as $kluc => $cislo) {
$cena = $_POST['cena'][$kluc];
$objednavky[$cislo] = $cena;
}
var_dump($objednavky);
} |
||
| tomas2245 Profil |
#10 · Zasláno: 16. 5. 2019, 00:13:57
Radek9:
Najs, toto som potreboval, Ďakujeeem |
||
|
Časová prodleva: 7 let
|
|||
0