Screwdriv
6.04.2017, 11:38:31
Cześć. pytanie jak zrobić by tablica posiadała wszystkie wprowadzone dane. przykład niekoniecznie dobry ale jakoś muszę pokazać o co mi chodzi.
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250" />
<body>
<form method="POST">
pozycja1: <input type="text" name="order1" size="15">
ilość: <input type="text" name="order11" size="15">
pozycja2: <input type="text" name="order2" size="15">
ilość: <input type="text" name="order22" size="15">
<input type="submit" value="OK">
</form>
<?php
$pozycja1 = $_POST['order1'];
$ilosc1 = $_POST['order11'];
$pozycja2 = $_POST['order2'];
$ilosc2 = $_POST['order22'];
$wiadomosc = array ($zm_1, $zm2);
$zm_l = strlen($pozycja1 && $ilosc1);
$zm_2 = strlen($pozycja2 && $ilosc2);
if ($zm_l > 0) {
$wiadomosc = $pozycja1.' '.$ilosc1;
}
if ($zm_2 > 0) {
$wiadomosc = $pozycja2.' '.$ilosc2;
}
echo 'Wpisales dane oto twoje dane:', $wiadomosc;
?>
</body>
</head>
</html>
mamy formularz zawierający pola do wypełnienia. zastosowana jest kontrola czy dane są wpisane parami. jakoś to działa. chodzi mi o to żeby w momencie wypełnienia obu par wyświetliło mi wszystkie dane i bym mógł to wywołać jednym hasłem czyli np tu $wiadomosc
wolguy
6.04.2017, 13:47:47
$zm_l = strlen($pozycja1 && $ilosc1); to chyba powinno wyglądać tak: $zm_l = strlen($pozycja1 . $ilosc1);
Screwdriv
7.04.2017, 06:51:28
nie. strlen jest poprawnie. jest tam po to żeby sprawdzić czy oba pierwsze pola zostały wypełnione i to samo z drugą parą..
nie wiem jak zmusić to blaszane pudło do wyświetlenia na końcu danych z obu par. bo na tą chwilę druga para nadpisuje mi
dane pierwszej i wyświetli tylko ostatnią parę a zależy mi na tym żeby wyświetlił wszystko jednym wywołaniem.
viking
7.04.2017, 06:59:41
if ($zm_2 > 0) {
$wiadomosc .= $pozycja2.' '.$ilosc2;
Screwdriv
7.04.2017, 07:21:01
ehhh jedna głupia kropka i tyle problemów dzięki
wolguy
7.04.2017, 09:07:27
no ale sprawdzanie strlen boola nie ma za bardzo sensu
Screwdriv
7.04.2017, 09:22:30
Skoro robi to o co mi chodzi to ma sens. zapewne można zapisać to w inny "lepszy" sposób ale te inne sposoby (empty, isset...) nie dawały mi tego co chciałem. a ten kod to tylko przykład.
wolguy
7.04.2017, 09:24:07
tylko w takim razie if ($zm_l > 0) { zawsze zwróci true
Screwdriv
7.04.2017, 09:33:44
ma mi podawać wartości z okienek jeśli zostały wypełnione i jest tam warunek wypełnienia dwóch pierwszych okienek wtedy zm_1 ma wartość true w innym przypadku echo nic nie wyświetli. co tu jest źle?
wolguy
7.04.2017, 09:49:17
operator && zwróci 1 albo 0. Jeśli sprawdzimy długość 0 czy 1 to zawsze będzie 1 dlatego ten warunek z ifa zawsze się wykona
viking
7.04.2017, 09:59:36
No nie do końca. && zwróci boolean a strlen boolean daje 0 albo 1.
wolguy
7.04.2017, 10:23:55
a to przepraszam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.