Jump to content
php.lv forumi

Pentiums

Reģistrētie lietotāji
  • Posts

    617
  • Joined

  • Last visited

Posts posted by Pentiums

  1. Varbūt netrāpīju īstajā sadaļā bet nu darīšana arī ar arrajiem.

     

    Kā datubāzē uzglabāt šādus mainīgos un pēctam viņus vienkārši ar vienu kveriju izvilkt?

     

    $lang['lat']['slogan'] = 'Teksts LV valodā';
    $lang['eng']['slogan'] = 'Teksts EN valodā';
    $lang['rus']['slogan'] = 'Teksts RU valodā';
    
    $lang['lat']['title'] = 'Teksts LV valodā';
    $lang['eng']['title'] = 'Teksts EN valodā';
    $lang['rus']['title'] = 'Teksts RU valodā';
    
    $lang['lat']['hello'] = 'Teksts LV valodā';
    $lang['eng']['hello'] = 'Teksts EN valodā';
    $lang['rus']['hello'] = 'Teksts RU valodā';

  2. Labdien. Papētīju, ka draugiem.lv izmanto jquery lai atvērtu un aizvērtu vēstules. Vēstules atvēršana tiek iegūta no atsevišķa linka msg.php?bla=pļa un vēstules aizvēršana pie viņiem izpaužas kā <tr style="display: none;">. Esmu jauns JS. Zinu tikai dažus JS pamatus, kur nu vēl jQuery.. :( Kā to visu dabūt gatavu? Meklēju googlee gatavus piemērus bet neatradu.

  3. Labdien. Man jautājumi daži par mysql_close PHP funkciju.

     

    1. Vai to lietot ir rekomendējams un kā ir labāk?

    2. Vai nākamās lapas ielādes laiks nepalielinās ar šīs fjas lietošanu?

    3. Un vai to nelietojot pie bieža lapas apmeklējumu skaita var dabūt erroru "Could not connect to SQL database. Too many connections."??

     

    Paldies.

  4. Šajos divos laukos datumus glabāju tikai priekš šī mērķa un jā, tā likās vienkāršāk izdabūt datus ārā salīdzinot, jo googlē atrastie piemēri par upcoming birthdays sajauca galvu :(

    Tad kādā laukā man glabāt to datumu šim mēŗķim galugalā? DATE, TIMESTAMP, DATETIME vai TIME?

  5. Labdien.

     

    Lietotāju tabulā tagad ir lauki nday un bday, kuri satur datumus šādā formātā 05.23 (mēnesis.diena) Lai izvilktu nākamā mēneša jubilejas (vārdadienas un dzimšanas dienas) veicu šādu vaicājumu:

    SELECT friendship.*, friends.nday fnday, friends.bday fbday, friends.name fname, friends.surname fsurname, friends.id fid FROM friendship LEFT JOIN friends ON friends.id=friendship.friend
    WHERE (friendship.owner = 1) AND ((friends.bday >= 04.23 AND friends.bday <= 05.23) OR (friends.nday >= 04.23 AND friends.nday <= 05.23))
    ORDER BY friends.bday AND friends.nday ASC

     

    Viss ir smuki un jauki, tikai ORDER BY niķojās, man agrāk likās, ka ORDER BY sakārto datus kuri tiek iegūti ar WHERE klauzu, bet izrādās ka nē :(

    Tātad problēma sekojoša: Ja lietotājam ir kāda dzimšanas diena vai vārda diena kas neiekļaujas šī WHERE mēneša starpā, pie ORDER BY arī tiek ņemta vērā, tāpēc tiek sajaukta visa kārtošanas secība, jo man vajag sakārtot ASC secībā pēc vārda dienas un dzimšanas dienas, lai izvadītu attiecīgi:

    29.04 v/d Jānis Smits

    03.05 dz/d Arnis Zarnis

    13.05 v/d, 19.05 dz/d Skaidra Neskaidrīte

     

    BET, ja Jānim Smitam dzimšanas diena ir piemēram 22.08 tad viņš tiek nomests apakšā.

     

    Tātad, kā lai visu šito te izlabo?

     

    P.S ja kādam interesē, te arī PHP kods :)

     

    $q = mysql_query("SELECT friendship.*, friends.nday fnday, friends.bday fbday, friends.name fname, friends.surname fsurname, friends.id fid FROM friendship
    LEFT JOIN friends ON friends.id=friendship.friend
    WHERE (friendship.owner = ".$myinfo['id'].") AND ((friends.bday >= ".date('m.d')." AND friends.bday <= ".date('m.d', strtotime('next month')).") OR (friends.nday >= ".date('m.d')." AND friends.nday <= ".date('m.d', strtotime('next month'))."))
    GROUP BY friends.bday
    ORDER BY friends.bday AND friends.nday ASC");
    while($data = mysql_fetch_array($q)) {
    echo '<span style="color: #999999;">';
    if($data['fbday'] >= date('m.d') && $data['fbday'] <= date('m.d', strtotime('next month')) && $data['fnday'] >= date('m.d') && $data['fnday'] <= date('m.d', strtotime('next month'))) {
    if($data['fbday'] < $data['fnday']) {
    echo date('d.m', strtotime('2009-'.str_replace('.', '-', $data['fbday']))).' dz/d, '.date('d.m', strtotime('2009-'.str_replace('.', '-', $data['fnday']))).' v/d';
    }
    else {
    echo date('d.m', strtotime('2009-'.str_replace('.', '-', $data['fnday']))).' v/d, '.date('d.m', strtotime('2009-'.str_replace('.', '-', $data['fbday']))).' dz/d';
    }
    }
    else {
    if($data['fbday'] >= date('m.d') && $data['fbday'] <= date('m.d', strtotime('next month'))) {
    echo date('d.m', strtotime('2009-'.str_replace('.', '-', $data['fbday']))).' dz/d';
    }
    else {
    echo date('d.m', strtotime('2009-'.str_replace('.', '-', $data['fnday']))).' v/d';
    }
    }
    echo '</span> '.htmlspecialchars(stripslashes($data['fname'].' '.$data['fsurname'])).'<br>';
    }

  6. Sveiki.

    Gribu izvilkt nākamos 5 jubilārus (v/d un dz/d) abi glabājas unix timestamp laukos vārdadienai tikai pieglabāts 2000gads klāt :D

    Kā vislabāk izvilkt jubilāru sarakstu no db? Kādā formātā ieteicams glabāt datumu speciāli priekš jubilāru izvilkšanas?

    Priekš jubilāru izvilkšanas unix timestampā visiem useriem vajag glabāt gadu vienu un to pašu? piemēram visiem 2000 gads un taalaak datums...

     

    un kverijs buutu kautkaa tā?

     

    $today = strtotime('2000.04.22');

    SELECT * FROM friends WHERE bday_unix = $today OR nday_unix = $today

     

    bet ja sis te straadaa, man rodas jautajums, kas ir ja ir decembris un vajag izvilkt ari dazus janvaara jubilaarus? tur jau vairs neiedarbojas šis WHERE nosacījums.

     

    ceru ka saprataat manus jautaajumus

×
×
  • Create New...