![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 269 Pomógł: 0 Dołączył: 6.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Potrzebuje funkcji, która pobierze mi wartosc nastepnego w kolei id /pole jest auto increment/ z bazy SQL.
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
po pierwsze: po co ci to? Moze da sie obejsc (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
po drugie: http://forum.php.pl/index.php?showtopic=33...mp;#entry191278 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 269 Pomógł: 0 Dołączył: 6.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Chce nadawac plikom unikalna nazwe i wykorzystac do tego przyszla wartosc id .
Nazwa pliku musi powstac przed dodaniem danych o pliku do bazy Jak otrzymac aktualnie ustawione Kod TYPE=MyISAM AUTO_INCREMENT=3;
Ten post edytował free 19.03.2007, 13:32:47 |
|
|
![]()
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Chce nadawac plikom unikalna nazwe i wykorzystac do tego przyszla wartosc id . Czemu?Nazwa pliku musi powstac przed dodaniem danych o pliku do bazy Przecież do unikalności nie potrzeba ścisłej kolejności w nazwach. Sam sobie takim podejściem stwarzasz problemy, zarówno teraz jak i w przyszłości. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 269 Pomógł: 0 Dołączył: 6.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Tworze galeria.
Przesylam obrazek o jakiejs nazwie. Skrypt go przerabia tworzy miniaturke. skrypt umieszcz plik w katalogu max a miniaturke w min Do tej nazwy miniaturki chce uzyc aktualne id_min, a duzy obrazek nazwac id_max I dane o nazwie plikow umiescic w bazie sql Czy sie tu przyda i jak tego uzyc ? Ten post edytował free 19.03.2007, 13:36:43 |
|
|
![]()
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
1. Upload;
2. Walidacja czy plik OK i czy zapisujesz go; 3. Wygenerowanie unikalnej nazwy dla pliku (na przykład: md5(uniqid());); 4. Generujesz miniaturkę i zapisujesz pliki w odpowiednich lokalizacjach; 5. Jeśli wszystko się udało to zapisujesz do bazy danych; 6. Jeśli zapis do bazy się nie powiódł to usuwasz pliki. Nie ma żadnego uzasadnienia do ciągłości identyfikatorów. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 269 Pomógł: 0 Dołączył: 6.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Otoz jest. Majac takie dane w bazie w łatwy spsob wyswietlam w skrypcie z galeria.
Prosze o rade a nie o uzasadnienie mojej decyzji. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 380 Pomógł: 2 Dołączył: 5.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
przeciez jak uzywasz bazy to mozesz zapisac tam nazwe pliku, zreszta to jest nawet logiczne. A jesli juz sie tak upierasz przy tym id to sobie pobierz najwieksze z bazy i dodaj 1
|
|
|
![]()
Post
#9
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
No ale czemu tkwisz w swoim założeniu? Gwarantuję Ci że jest błędne i przysporzy Ci bardzo wiele problemów. Na początek z kontrolą identyfikatorów. Nie jest to banalne.
A poza tym: Cytat Majac takie dane w bazie w łatwy spsob wyswietlam w skrypcie z galeria. Nie ma żadnej różnicy. Kiedy będziesz miał dane w tabeli:Kod id | generatedName | originalName i id nie będzie po kolei, nie będziesz miał żadnych problemów z wyświetlaniem. A za to będziesz miał mnie problemów na głowie.Nie chce na siłę Ci wmusić tego rozwiązania tylko uchronić Cię przed błędem. |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 269 Pomógł: 0 Dołączył: 6.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Niestety potrzebuje wartosc id z auto increment. Powiesz mi jak ja uzyskac ?
|
|
|
![]()
Post
#11
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Niestety potrzebuje wartosc id z auto increment. Powiesz mi jak ja uzyskac ? No przeciez dostales linka odemnie....Tu masz drugiego: http://forum.php.pl/index.php?showtopic=30...;hl=ostatnie+id |
|
|
![]()
Post
#12
|
|
Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli się upierasz przy takim rozwiązaniu to oto kilka prostych rzeczy do zrobienia:
1. Wysyłasz formularz 2. Dodajesz informacje o pliku do bazy 3. Wyciągasz za pomocą mysql_insert_id() wygenerowane ID 4. Korzystając z move_uploaded_files() przenosisz pliki z folderu tymczasowego do folderu docelowego w nazwie wykorzystując id pobrane w kroku 3cim. 5. Aktualizujesz dane w bazie o nową nazwę pliku korzystając z ID wygenerowanego w kroku 3cim. Możesz tam wstawić jeszcze walidację pobieranego pliku. |
|
|
![]()
Post
#13
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
A czy jak masz zdjęcia o id 1, 2, 3, 4, 5 i usuniesz zdjęcie o id 4 i będziesz miał:
1, 2, 3, 5 to czy to wpłynie jakoś negatywnie na Twoja aplikację? |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 269 Pomógł: 0 Dołączył: 6.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Cienki tak mialem zamiar pierwotnie zrobic, ale przyznasz ze jest to metoda okrezna . Dlatego zastanawiam sie jak pobrac aktualna id
sprobuje jeszcze z select last_insert_id(); Mike. wplynie negatywnie. Bo mam galerie obrazy przed i po /remoncie/. Nie chce tego opisywac, ale wyswietlam obok siebie obraz przed remontem i po remoncie / galeria budowlana/ a adresem jest id i wstawiam po lub przed i mi skrypt wyswietla. tera zmam problem z dodaniem nie majac tego id Apropo last_insert_id(); to w wypadku usuniecia ostatniego rekordu metoda nie wypali Pytanie jest proste : Jak pobrać wartosc ktora aktualnie w bazie widnieje w TYPE=MyISAM AUTO_INCREMENT=3; Pytanie jest proste : Jak pobrać wartosc ktora aktualnie w bazie widnieje w TYPE=MyISAM AUTO_INCREMENT=3; |
|
|
![]()
Post
#15
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Pytanie jest proste : Jak pobrać wartosc ktora aktualnie w bazie widnieje w TYPE=MyISAM AUTO_INCREMENT=3; Odpowiedź jest rownie banalna: Juz dwa razy ci to mowilem, przypominalem o linku co dostales. Tam masz rozwiązanie. Jakies problemy z czytaniem? zamykam bo ile razy mozna oto samo pytac gdy odpowiedź padla juz kilka razy? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 19:26 |