Registrace nového uživatele     Návod     Kluby     Archív  Lopuchu     Lopuch.cz  

Náš Lopuch Vám
vytře zrak

Lopuch.cz

Jméno:
Heslo:
Podpora LCD:
 
Archiv klubu Database (mysql,...) [ŽP: neomezená] (kategorie Programování) moderuje melkor_unlimited.
  Nastavení klubu     Nastavení práv     Homepage     Anketa     Přítomní     Oblíbené     Lopuch     Kategorie  
autor: 
text: 
vyplnit a 
Help
   
[ 414 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  
mach 30.12.2005 21:43  275
Ale asi mu to tam poprve hodi nejaky error...
anywherehome 30.12.2005 12:14  274
AL3X [273]: no co, kdyžtak si uživatel klikne znovu :)
al3x 30.12.2005 10:53  273
anywherehome [272]: Aha, tak to jo, ale i tak bych to resil trosku jinak. :)
Resi zamykanim tabulek a transakcemi, ktere by se teoreticky mely navenek chovat jako jeden kompaktni dotaz. Bud se cela provede a kdyz ne, tak se "odroluji" zmeny zpet do stavu pred spustenim transakce. Tehle problemu s "multi-taskingem" je vic a kazdy je jinak zavazny, pricemz v ruznych situacich se muzou nektere ignorovat.
Ale opravdu nevim, jak je na tom se zamky a spol. MySQL.
anywherehome 30.12.2005 09:16  272
AL3X [271]: to není funkce pro uživatele, je to jen pro statistiky. Uživatelé se tam v tu dobu přihlašovat nebudou (v určitý rozmezí času)
Jen tak pro zajmavost, jak se vlastně ošetřuje tento problém s dvěma nebo i více požadavky na databázi?
al3x 30.12.2005 02:45  271
huh [269]: Jasny, pred die. Jen jsem to tam proste vkopiroval, jak mi to padlo do ruky :)
anywherehome [270]: Mno, taky reseni. Hele a pocitas s tim, ze kdyz ti kliknou dva uzivatele tesne po sobe, tak to tomu druhymu muze padnout?? Jestli na to dneska seres, tak to stejne nedelej timhle zpusobem a udelej to poradne (pres provazanou tabulku) zitra. Tohle je fakt nedobry reseni.
anywherehome 30.12.2005 00:12  270
téměř vyřešeno, našel sem to v manuálu, díky$link = mysql_connect('localhost', 'mojejmeno', 'tajne');

$fields = mysql_list_fields("databaze1", "tabulka1", $link);
$columns = mysql_num_fields($fields);

for ($i = 0; $i < $columns; $i++) {
echo mysql_field_name($fields, $i) . "\n";
}
huh huh 29.12.2005 23:43  269
AL3X [265]: print mysql_error($link); bych dal pred to die("Query error");, jinak je tam na nic
anywherehome 29.12.2005 23:05  268
AL3X [265]: tak sem to přesně zkopíroval, ale zas "Query error", nic víc nevypisuje, asi to mysql.wz.cz nemá povolený
a dokonce sem to s tím num_rows už předtím taky zkoušel
AL3X [267]: tabulka už je navržená, musela by se s novou provázat........to sme původně chtěli udělat, ale....
asi na to dneska....
díky
al3x 29.12.2005 22:59  267
A ze to je prasarna pridavat sloupce pro dny snad ani rikat nemusim :)

Zkus udelat novou tabulku, ktera bude vypadat treba
hraci_dny:
id_hrace integer, datum date;

A bude mit radek pro kazdyho hrace a datum.
al3x 29.12.2005 22:57  266
Jaj, zapomnel jsem z toho "sem" udelat odkaz :)
http://mirrors.inway.cz/manual/en/function.mysql-num-rows.php
al3x 29.12.2005 22:57  265
Tak se koukni sem.

A pro zacatek zkus tohle:
$sql="DESCRIBE TABLE hraci date_1_4_2005";
$result=mysql_query($sql,$link) or die("Query error");
print mysql_error($link);
if(mysql_num_rows($result)==0){
   echo("Column does not exist");
   $sql="alter table hraci add date_1_4_2005 blob";
   $result=mysql_query($sql,$link) or die("Query error");
   print mysql_error($link);

}
anywherehome 29.12.2005 22:49  263
AL3X [262]: jak říkám, du na to přes php, takže nic víc to nevypisuje
používám to na automatický zařazení dnu jako názvu sloupce
radši zkopíruju celej kód:
$sql="DESCRIBE TABLE hraci date_1_4_2005";
$result=mysql_query($sql,$link) or die("Query error");
if($result==0):
echo("Column does not exist");
$sql="alter table hraci add date_1_4_2005 blob";
$result=mysql_query($sql,$link) or die("Query error");
endif;

za případný triviální začátečnický chyby se omlouvám
al3x 29.12.2005 22:45  262
anywherehome [259]: Je tam neco jako mysql_error(), coz by ti melo napsat co je v tom dotazu spatne.
al3x 29.12.2005 22:44  261
anywherehome [257]: Tak nejak, jen je tu jeste riziko, ze kdyz se ten script pusti 2x, tak se muze stat, ze oba zjisti, ze sloupec chybi a pokusi se ho vlozit. Pak ti u druhy instance toho scriptu zarve db, ze se pokousis vlozit sloupec, ktery uz tam je. (Vlozila ho ta prvni instance.)

Vazne, jsi si jist, ze tohle vazne potrebujes?? K cemu to pouzivas?
anywherehome 29.12.2005 22:43  260
mach [258]: jo, jasně, to sem samo udělal

[ 414 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  

(c) 2001-2011 Lopuch.cz   
Kontakt