![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 29.12.2003 Skąd: Radom Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam coś takiego [php:1:7337ee5562]<?php include "./common_db.inc"; $link_id=db_connect(); $date_num= date("Y/m"); $qnum="SELECT max(lp) FROM dane"; $wynik=mysql_query($qnum); $num=mysql_fetch_row($wynik); $numer=$num[0]; print"$date_num/$numer"; ?>[/php:1:7337ee5562] gdzie: w tabeli dane w kolumnie lp sa cyfry w postaci 1 2 3 itd Skrypt w rezultacie wyrzuca wynik w postaci 2004/01/1 a chciałbym żeby było 2004/01/0001 dla 2 2004/01/0002 itd Potem w następnym miesiącu będzie 2004/02/tu zaś numeracja idzie od 0001 Dzieki za pomoc |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Może tak?
[php:1:7cad337274]<?php $i = 1000 / $numer; while($i>1) { $xx .= "0"; $i = $i/10; } $numer = $xx.$numer; ?>[/php:1:7cad337274] |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 29.12.2003 Skąd: Radom Ostrzeżenie: (0%) ![]() ![]() |
jakby Ci to nie sprawiło trodności to napisz jak to działa
DZIEKI DZIEKi |
|
|
![]()
Post
#4
|
|
Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Cytat napisz jak to działa I czemu to służy?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 3.09.2002 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
Cytat Może tak?
[php:1:8f8c043f59]<?php $i = 1000 / $numer; while($i>1) { $xx .= "0"; $i = $i/10; } $numer = $xx.$numer; ?>[/php:1:8f8c043f59] a nie prosciej [php:1:8f8c043f59]<?php $string_i = sprintf("%04s",$number); ?>[/php:1:8f8c043f59] |
|
|
![]()
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Cytat I czemu to służy?
Przeczytaj pytanie, to może zrozumiesz..... P.S. Może nie jest to najprostrzy sposób, ale taki wtedy przyszedl mi do glowy. |
|
|
![]()
Post
#7
|
|
Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Cytat Może nie jest to najprostrzy sposób, ale taki wtedy przyszedl mi do glowy. Jedno Twoje szczęsćie że php pozwala na dowolną żonglerkę typami zmiennych. W bardziej doprecyzowanym językku miałbyś "Type mismatch" w kilku liniach Twojego listingu. Stąd moje pytanie.
|
|
|
![]()
Post
#8
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Cytat Cytat Może nie jest to najprostrzy sposób, ale taki wtedy przyszedl mi do glowy. Jedno Twoje szczęsćie że php pozwala na dowolną żonglerkę typami zmiennych. W bardziej doprecyzowanym językku miałbyś "Type mismatch" w kilku liniach Twojego listingu. Stąd moje pytanie.Szczęście?! A co ma szczęście do specyfikacji języka i konwersji typów, czy jak wolisz, żonglerki typami? Ale skoro już się czepiamy, to pokaż mi miejsce, w którym JAWNIE zadeklarowane jest, że $numer jest liczbą. Pokaż mi gdzie w ogóle zadeklarowana jest zmienna $numer. Jak to powiedziałeś, w bardziej doprecyzowanym języku pojawiło by się więcej błędów w moim, ale też w innych kodzie. W Twoim pewnie nie, bo nic nie zapodałeś... |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 569 Pomógł: 0 Dołączył: 17.08.2003 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%) ![]() ![]() |
W komentarzach do funkcji number_format jest podana przez kogos funkcja, ktora niedosc ze odpowida twoim wymaganiom, czyli poprzedza zerami cyfre, to jeszcze zaokrakla liczby po przecinku. Jak zwykle wszystko w manualu (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 22.10.2003 Skąd: Trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
Cytat Może tak?
[php:1:eb55876e56]<?php $i = 1000 / $numer; while($i>1) { $xx .= "0"; $i = $i/10; } $numer = $xx.$numer; ?>[/php:1:eb55876e56] Hmm, jest taka funkcja [manual:eb55876e56]str_pad[/manual:eb55876e56] moze ona pozwoli rozwiazac problem w jednej linijce [php:1:eb55876e56] <? $numer = 1; echo str_pad($numer, 4, '0'); ?> [/php:1:eb55876e56] W wyniku bedziemy mieli 0001 |
|
|
![]()
Post
#11
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
To co napisałeś zwróci 1000.
Aby było dobrze trzeba użyć echo str_pad($numer, 4, '0', STR_PAD_LEFT); Reasumując, sposobów na wykonanie tego zadania jest wiele, od użytkownika zależy który wybierze. Proponuje EOT |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 22.10.2003 Skąd: Trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
Cytat To co napisałeś zwróci 1000.
Aby było dobrze trzeba użyć echo str_pad($numer, 4, '0', STR_PAD_LEFT); Reasumując, sposobów na wykonanie tego zadania jest wiele, od użytkownika zależy który wybierze. Proponuje EOT sorki, walnalem sie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) masz calkowita racje STR_PAD_LEFT musi byc |
|
|
![]() ![]() |
![]() |
Aktualny czas: 25.08.2025 - 15:32 |