Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Dodawanie liczb do zmiennych.
Forum PHP.pl > Forum > Przedszkole
assasin
Mam formularz:

  1. <label>Money&nbsp;
  2. <input name="money_g" size="4" maxlength="15" type="text">&nbsp; g&nbsp;
  3. <input name="money_s" size="2" maxlength="2" type="text">&nbsp; s&nbsp;
  4. <input name="money_c" size="2" maxlength="2" type="text">&nbsp; c&nbsp;



Wprowadzam do kolejnych komórek 1 2 3 wartości np:

1 1 1 no i generuje się wynik 10101 który zapisuje się w zmiennej np: zmienna3.

10101 - pierwsza jedynka wartość z komórki money_G, 01 - wartość z komórki money_g no i kolejne 01 money_c.
Prościej pisząc jeśli wpiszemy liczbę od 1-9 przed liczbę w komórkach 1 i 2 dodaje się 0... jeżeli jest już od 10-... nic się nie dodaje.

Największym pytaniem jest to jak pobrać dane z komórki x3 zmienna i post a później jakoś te zmienne dodać?
smietek
Chaotycznie to wytłumaczyłeś, ale spróbuję Ci pomóc.
Jeśli chcesz dodać wartości z tych wszystkich pól do siebie (jako liczby):
  1. $val = intval($_POST['pole1']) + intval($_POST['pole2']) + intval($_POST['pole3']);

To dodatkowo zabezpieczy Cię przed tekstem (jednak jeśli chcesz mieć możliwość wprowadzania danych zmiennoprzecinowych, zamiast funkcji intval użyj floatval
Jeśli chcesz pododawać do siebie teksty z tych komórek (skleić go z jedną całość):
  1. $val = $_POST['pole1'] . $_POST['pole2']. $_POST['pole3'];
assasin
Cytat
Jeśli chcesz pododawać do siebie teksty z tych komórek (skleić go z jedną całość)


Tak o to mi chodzi tylko co zrobić żeby przed liczby od 1 do 9 z pole2 i pole3 zostało dodane 0?
minolone
Trzymaj kod
  1. <form method='post'>
  2. <input type='text' size='4' name='jeden'>
  3. <input type='text' size='4' name='dwa'>
  4. <input type='text' size='4' name='trzy'>
  5. <input type='submit' name='submit' value='Dodaj'>
  6. </form>
  7.  
  8. <?php
  9.  
  10. if($_POST['submit'] == 'Dodaj')
  11. {
  12.  
  13. if($_POST['dwa'] || $_POST['trzy'] < 10)
  14. {
  15. $_POST['dwa'] = '0' . $_POST['dwa'];
  16. $_POST['trzy'] = '0' . $_POST['trzy'];
  17. }
  18.  
  19. echo $_POST['jeden'] . '<br />';
  20. echo $_POST['dwa'] . '<br />';
  21. echo $_POST['trzy'] . '<br />';
  22.  
  23. }
  24. ?>

Polecam sobie go zmodyfikować żeby sprawdzał ci czy pole nie są puste, jeżeli tak żeby nic się nie wykonywało, jest to jedna z prostszych metod jaka może być
assasin
hmm tylko co zrobić jeszcze żeby cały wynik wyświetlał się w formie
Cytat
'10101',

W tej chwili wyświetla się tak:
Cytat
1
01
01

Szunaj85
Cytat
hmm tylko co zrobić jeszcze żeby cały wynik wyświetlał się w formie ...

  1. echo $_POST['jeden'] . '<br />';
  2. echo $_POST['dwa'] . '<br />';
  3. echo $_POST['trzy'] . '<br />';
Usuń <br /> z kodu i wyświetl wszystkie zmienne za pomocą jednego echo.
assasin
tak ale to nie zmienia tego że nie ma ' ', i tego żę wynik nie jest w zmiennej.
kombinowałem tak:
  1. $zmienna = $_POST['jeden'] . '"'"'; . $_POST['dwa'] . ''; . $_POST['trzy'] . '"',"';

ale nie działa:D
minolone
  1. echo "'" . $_POST['jeden'] . $_POST['dwa'] . $_POST['trzy'] . "',";

i polecam jakaś książkę lub manuala, a nie wypisywanie jakiś kosmicznych rzeczy,
a jeżeli wynik ma być w zmiennej zamiast echo uzyj $zmienna = , i bedzi wynik w zmiennej $zmienna
assasin
Cytat
<?php echo $zmienna1 = "<textarea name=sql wrap=off cols=100 rows=1>
INSERT INTO `creature_template` VALUES ("$entry, $heroic_entry, $modelid_A, $modelid_A2, $modelid_H, $modelid_H2, $name, $subname, $IconName, $minlevel, $maxlevel, $minhealth, $maxhealth, $minmana, $maxmana, $armor, $faction_A, $faction_H, $npcflag, $speed, $scale, $rank, $mindmg, $maxdmg, $dmgschool, $attackpower, $baseattacktime, $rangeattacktime, $unit_flags, $dynamicflags, $family, $trainer_type, $trainer_spell, $class, $race, $minrangedmg, $maxrangedmg, $rangedattackpower, $type, $type_flag, $lootid, $pickpocketloot, $skinloot, $resistance1, $resistance2, $resistance3, $resistance4, $resistance5, $resistance6, $spell1, $spell2, $spell3, $spell4, $PetSpellDataId, $mingold, $maxgold, $AIName, $MovementType, $InhabitType, $RacialLeader, $RegenHealth, $equipment_id, $mechanic_immune_mask, $flags_extra, $ScriptName;"</textarea>"; ?>

Widzi ktoś tutaj jakiś błąd?
minolone
Oczywiście że błąd jest i widać go na pierwszy rzut oka, proponuje MANUAL PHP/MySQL. Nic dodać nic ująć. I używaj odpowiedniego BBCODE.
I myślę że wklejanie kodu znalezionego w internecie, lub nawet napisanego przez ciebie, nie zmieni faktu że trzeba troszke pomyśleć, poszukać. Wklejasz sobie kod i chcesz uzyskac odpowiedz, a przede wszystkim to przeczytaj. i skorzystaj z jakiegoś dobrego edytora PHP np eclipse.

EDIT:

Poszukałem sobie chwile tego twojego kodu i znalazłem, więc nie myliłem się co do bezmyślnego kopiowania z internetu, oczywiście jest z tym błędem co ty posiadasz.
Więc skoro potrafisz szukać to myśle że też potrafisz znaleźć na to rozwiązanie!
assasin
Mam jeszcze jeden mały problem którego nie umiem sam rozwiązać, szukałem w książce i w manualu..


  1. <?php echo $kod2 = "<textarea name=trinity1 wrap=off cols=100 rows=1>blebleble;"</textarea>";
  2. echo '<br />';
  3. echo $kod3 = "<textarea name=trinity2 wrap=off cols=100 rows=1>bkeblebl;"</textarea>";
  4. ?>

Problem jest taki że wynik wyświetla się w jednej komórce a nie w 2 osobnych..

Nikt nie wie o co mi chodzi??
croc
Ty naprawdę leniwy. Mi by było wstyd takie pytania zadawać biggrin.gif
Pawel_W
Cytat(minolone @ 1.05.2010, 19:15:13 ) *
Trzymaj kod
  1. <form method='post'>
  2. <input type='text' size='4' name='jeden'>
  3. <input type='text' size='4' name='dwa'>
  4. <input type='text' size='4' name='trzy'>
  5. <input type='submit' name='submit' value='Dodaj'>
  6. </form>
  7.  
  8. <?php
  9.  
  10. if($_POST['submit'] == 'Dodaj')
  11. {
  12.  
  13. if($_POST['dwa'] || $_POST['trzy'] < 10)
  14. {
  15. $_POST['dwa'] = '0' . $_POST['dwa'];
  16. $_POST['trzy'] = '0' . $_POST['trzy'];
  17. }
  18.  
  19. echo $_POST['jeden'] . '<br />';
  20. echo $_POST['dwa'] . '<br />';
  21. echo $_POST['trzy'] . '<br />';
  22.  
  23. }
  24. ?>

Polecam sobie go zmodyfikować żeby sprawdzał ci czy pole nie są puste, jeżeli tak żeby nic się nie wykonywało, jest to jedna z prostszych metod jaka może być

a słyszałeś o str_pad? smile.gif
assasin
No jak widać nikt nie zrozumiał mojego pytania..
Mam skrypt bleble formularz w formularzu jest js (mintajax).
Po naciśnięciu wyślij wyświetla się wynik z pliku test.php, problem jest taki że powinny się pojawić tak jakby 2 wyniki, 2 komórki i w nim tekst a jest tak że pojawia się jedna komórka a w niej cały tekst.


  1. <?php echo $kod2 = "<textarea name=trinity1 wrap=off cols=100 rows=1>blebleble;"</textarea>";
  2. echo '<br />';
  3. echo $kod3 = "<textarea name=trinity2 wrap=off cols=100 rows=1>bkeblebl;"</textarea>";
  4. ?>


Chciałem to zrobić tak:

  1. <?php echo $kod2 = "<textarea name=trinity1 wrap=off cols=100 rows=1>blebleble;"</textarea>";
  2. ?>
  3.  
  4. <?php
  5. echo $kod3 = "<textarea name=trinity2 wrap=off cols=100 rows=1>bkeblebl;"</textarea>";
  6. ?>


Ale wtedy wyświetla się tylko pierwsza zmienna...

Ja nie jestem leniwy męczę się już miesiąc z jednym skryptem.. szukam szukam szukam..
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.