INSER INTO ..from array ..

INSER INTO ..from array ..

offline
  • Pridružio: 21 Okt 2005
  • Poruke: 65
  • Gde živiš: localhost

Evo ga opet neki problem :

Ovako imam jedan niz $rec[] tipa
$rec[1] = "nesto" , $rec[2] = "drugo" ..

e javio mi se problem kada pokusavam da unosim u MySql bazu podataka .
Naime , uspem da unesem ali samo prvi clan niza a ostalo nece . Pokuso sam da koristim for petlju .

u bazi imam ID[int Primary] , rec1[char] , rec2[char]

Na sta treba da obratim paznju ?

Hvala unapred

Dopuna: 06 Mar 2006 4:45

e resio sa ovo :-)

nego usput da pitam jel se moze nekako namestiti da se u bazu mogu samo razliciti reci unostit : ?

da se ne ponavljaju !



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Prvo proveriš da li ta reč postoji u bazi, pa ako je nema onda je uneseš.
Znači napravi upit bazi za tu reč.



offline
  • Pridružio: 21 Okt 2005
  • Poruke: 65
  • Gde živiš: localhost

Ja sam pokuso nesto ovako

if(!mysql_query("SELECT * FROM reci WHERE ser_rec='$rec[$n]'") );

ali mi nesto nece .

imas li neki predlog drugi ?

offline
  • Pridružio: 14 Nov 2003
  • Poruke: 367

Mozda gresim ali moglo bi da se koristi unique za odredjeni stubac

offline
  • Pridružio: 21 Okt 2005
  • Poruke: 65
  • Gde živiš: localhost

Pokuso sam i to , ali mi mysql izbacuje gresku ?
Ocigledno ne moze , bar ja mislim

Dopuna: 06 Mar 2006 18:55

Resio sam ovo na sledeci nacin , i meni radi odlicno :

$dozvola = 0 ; //ako je vrednost 0 onds ne postoji rec u bazi  for($n=0; $n<$br_reci; $n++)  {                              //ispis reci !!!      $query = "SELECT ser_rec FROM reci" ;   // upit za selekciju kolone ser_reci      $result = mysql_query($query);          //izvrsavanje upita       while ($line=mysql_fetch_array($result, MYSQL_ASSOC))  //ucitavanje vrednosti iz kolone trazene u upitu iznad            {            foreach($line as $col_value)                   {                   if($rec[$n]== $col_value ) { $dozvola = 1;}                   }            }      if($dozvola==0)        {         mysql_query("INSERT INTO reci (ser_rec) VALUES('$rec[$n]')") ;        }      $dozvola = 0 ;   }

Mozda nekome ovo i bude od koristi

offline
  • Pridružio: 17 Mar 2004
  • Poruke: 293
  • Gde živiš: UK

Ovo je otprilike najsporiji nachin upita nad bazom. Shta mislish kako ce ti stenjati server ako ta baza ima 500.000 rekorda i ti ih napunish sve u memoriju, pa udarish po toj petlji za poredjenje stringova?

Onaj prvi nachin je pravi, samo ne treba da zaokruzhujesh array u single-quote (') jer ti onda PHP ne parsuje izraz nego ga prenosi bukvalno kako je napisan.

Ko je trenutno na forumu
 

Ukupno su 1351 korisnika na forumu :: 81 registrovanih, 7 sakrivenih i 1263 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 15694 - dana 01 Feb 2026 12:23

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., Asparagus, babaroga, bbelic, bojank, boxbole, branko7, brufen, Cicumile, Citalac, Comyymoc, d.arsenal321, damirZR, Darko8, Djokislav, Drugsparrow, Ezbuck, Folkstar, Foxdie, g_g, Giskard, Gosha101980, GUARIN, GveX, Iskander, istina, Jakonjveliki, jodzula, Jozo74, K a s p e r, Kenanjoz, Knovakov, Kole1975, kolle.the.kid, Kriglord, krkalon, littlebunny, Ljusa, lord sir giga, LostInSpaceandTime, madza, Manjane, Marko Marković, medaTT, mercedesamg, milbos, Milos82, misaru, museum, nenad81, neutrino, nightwish, nikoladim, Novakomp, Ns1975, oldusername, Orc, Pekman, Pop78, precan, Remarqe, Resad76, ruger357, ruma, sajorg, saki80, samsung, Shajlok, Sirius, Smiljke, Srle993, Srna, toni061, trajkoni018, umaric7, Velibor Radoja, Zastava, Zeljo980, zivojin32, zmajbre, šumar bk2