Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] Zmienna w nazwie, Jak to dokladnie zrobic?
wupasek
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 28.11.2003

Ostrzeżenie: (0%)
-----


Problem wyglada tak, dodaja se rekordy, znajduje ostatnie id
ale jak mam to wpisac do inserta zeby sie dobrze nazwa pliku zapisala?
1/do tabeli chcialbym wrzucic nazwe skladajaca sie z ID rekordu i _cyfry od 1 do 4 czyli np 60_1.jpg 60_2.jpg itd, w przypadku inserta czesc _1.jpg _2.jpg itd moze byc zdefiniowana recznie bo sa tylko cztery wiec nie ma duzo roboty, ale jak polaczyc otrzymane id z ta koncowka?
2/ do folderu chcialbym wrzucic plik tez o takiej samej nazwie oczywiscie, ale tym razem chcialbym wykorzystac iteracje od 1 do 4
3/ no i kwestia kolejna - czy musze dopisywac .jpg za kazdym razem? jak nie dodam to zapisuja sie bez rozszerzen wiec lipa - jakie jest z tego wyjscie?
4/ czy da rade jakos zrobic z jednym Insertem tylko?

bo teraz wrzucam czesc, potem odczytuje id rekordu i dopiero wrzucam reszte z id w nazwie (przynajmniej takie bylo zalozenie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) )
Probowalem laczenia tych dwoch zmiennych na rozne sposoby, z ' , ", kropka i to w kilku kombinacjach, ale nie trafilem na poprawna konfiguracje :/
Dopiero kilka dni grzebie w php wiec napewno o czyms nie wiem albo przeoczylem

Prosze o pomoc bo mnie juz szlag trafia

kod (fragment ktory dotyczy mojego problemu)
  1. <?
  2. mysql_connect ("localhost", "$user", "$pass") or die ("Brak połączenia z MySQL");
  3.  mysql_select_db ("$database") or die ('Błąd połączenia z bazą'.': '.mysql_error());
  4. mysql_query ($query);
  5.  
  6. $query = mysql_query ("INSERT INTO ogloszenia_auta VALUES (NULL, '$rodzaj', NOW() )");
  7.  
  8. $new_id = mysql_insert_id();
  9.  
  10. mysql_query ($query2);
  11.  
  12. $query2 = mysql_query ("INSERT INTO ogloszenia_auta VALUES (NULL, '$rodzaj', NOW(), '$marka', '$model', '$opis', '$rocznik', '$przebieg', '$cena', '$miasto', '$sprzedajacy', '$email', '$telefon', '$new_id_1.jpg', '$new_id_2.jpg', '$new_id_3.jpg', '$new_id_4.jpg' )");
  13.  
  14. if (!$query2)
  15. {
  16. echo " Wpisu nie dodano!!";
  17.  
  18. } else {
  19. echo "Dodano";
  20. }
  21. //ZMIANA NAZWY PLIKU
  22. for ($i=1; $i<=4; $i++) 
  23. {
  24.  
  25. $tmp_img = "ogl_tmp_img$i";
  26.  
  27. if (is_uploaded_file($$tmp_img)) {
  28.  move_uploaded_file($$tmp_img, 'up/$new_id_$i.jpg');
  29. echo "Przesłano na serwer."; }
  30. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nitek
post
Post #2





Grupa: Zarejestrowani
Postów: 209
Pomógł: 37
Dołączył: 27.02.2008
Skąd: Kwidzyn

Ostrzeżenie: (0%)
-----


dodam, że jest to rozwiązanie mało eleganckie, bo nie masz żadnej gwarancji (szczególnie jeśli będzie dużo insertów jednocześnie), że nic się nie rozsypie...
Powinieneś wymyślić jakoś inaczej nazywanie zdjęć..
przykładowo możesz generować jakąś losową liczbę, wstawiać ją do tabeli obok id i do niej dopisywać swoje _1.jpg, _2.jpg itd...

Sam już nie wiem - może ktoś ma jakiś lepszy pomysł rozwiązania tego problemu?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

Ten post edytował nitek 28.02.2008, 11:49:06
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 19:26