Jump to content
php.lv forumi

Pentiums

Reģistrētie lietotāji
  • Posts

    617
  • Joined

  • Last visited

Everything posted by Pentiums

  1. mmm.. tagad viņš izvada "JĀNIS IKT_ _ _ IS" noraujot R
  2. Labdien! Ir te tāds skriptiņš, kas atklāj pareizi uzminētos burtus vārdā, nu līdzīgi kā Lingo spēlītē. <?php function lv_strtoupper($str) { $l=array('a','ā','b','c','č','d','e','ē','f','g','ģ','h','i','ī','j','k','ķ','l','ļ','m','n','ņ','o','p','r','s','š','t','u','ū','v','z','ž','ō','ŗ','x','q','w','y'); $u=array('A','Ā','B','C','Č','D','E','Ē','F','G','Ģ','H','I','Ī','J','K','Ķ','L','Ļ','M','N','Ņ','O','P','R','S','Š','T','U','Ū','V','Z','Ž','Ō','Ŗ','X','Q','W','Y'); return str_replace($l,$u,$str); } $atbilde = 'Jānis Riktīgais'; //15 simboli $mana_atbilde = 'Jānis Riekstiņš'; $word = trim(lv_strtoupper($atbilde)); $all_letters = lv_strtoupper($mana_atbilde).' -+.,;!?%&0123456789'; echo strlen($word); //Jābūt 15 for($x=0; $x < strlen($word); $x++) { if(strstr($all_letters, $word[$x])) { if($word[$x]==" ") { $word_line.=" "; } else { $word_line.=$word[$x]; } } else { $word_line.='_<font size=1> </font>'; } } echo '<br><br>'; echo $word_line; ?> Tātad, uz ANSI viss ir čikiniekā! Bet man tākā vajadzētu to visu iedarbināt uz UTF-8 enkodinga! Tātad problēmas ar garumzīmēm un mīkstinājuma zīmēm, uz utf-8 viņš izskaita ka frāzē ir 17 simboli nevis 15, un ja uz utf-8 es strlen aizstāju ar mb_strlen('...', 'utf-8') un strstr ar mb_strstr('...', 'utf-8') garumzīmju vietā rādas ķeburi bet izskaitīt viņš izskaita ka ir 15!!! :( Gaidīšu jūsu atsauces kā atrisināt šo problēmu.
  3. mysql> EXPLAIN SELECT DISTINCT (komentari.tid), komentari.datums as datumz, raks ti.curl as raksta_curl, raksti.id as raksta_id, raksti.virsraksts as raksta_nosa ukums, lietotaji.lietotajs as niks, lietotaji.id as lietotaja_id -> FROM komentari LEFT JOIN raksti ON raksti.id=komentari.tid -> LEFT JOIN lietotaji ON lietotaji.id=komentari.uid -> WHERE komentari.tips='raksts' AND komentari.id IN ( -> SELECT k2.id FROM komentari AS k2 WHERE k2.tid=raksti.id AND k2.datums IN ( -> SELECT MAX(k3.datums) FROM komentari AS k3 WHERE k3.tid=raksti.id -> ) -> ) -> GROUP BY komentari.tid -> ORDER BY komentari.id DESC LIMIT 5 ->; +----+--------------------+-----------+-----------------+---------------+---------+---------+--------------------------+------+----------------------------------------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+--------------------+-----------+-----------------+---------------+---------+---------+--------------------------+------+----------------------------------------------+ | 1 | PRIMARY | komentari | ALL | NULL | NULL | NULL | NULL | 156 | Using where; Using temporary; Using filesort | | 1 | PRIMARY | raksti | eq_ref | PRIMARY | PRIMARY | 4 | niknais_v2.komentari.tid | 1 | Using where | | 1 | PRIMARY | lietotaji | eq_ref | PRIMARY | PRIMARY | 4 | niknais_v2.komentari.uid | 1 | | | 2 | DEPENDENT SUBQUERY | k2 | unique_subquery | PRIMARY | PRIMARY | 4 | func | 1 | Using where | | 3 | DEPENDENT SUBQUERY | k3 | ALL | NULL | NULL | NULL | NULL | 156 | Using where | +----+--------------------+-----------+-----------------+---------------+---------+---------+--------------------------+------+----------------------------------------------+ 5 rows in set (0.02 sec)
  4. Vaii.. +-----+------------+-----------+--------------------------------------------------+----------+--------------+ | tid | datumz | raksta_id | raksta_nosaukums | niks | lietotaja_id | +-----+------------+-----------+--------------------------------------------------+----------+--------------+ | 101 | 1236240840 | 101 | raksts2 | lietotajs4| 1 | | 100 | 1236102567 | 100 | raksts5 | lietotajs1| 2 | | 99 | 1236091050 | 99 | raksts8 | lietotajs4| 1 | | 87 | 1235989530 | 87 | raksts3 | lietotajs9| 3 | | 94 | 1235940158 | 94 | raksts1 | lietotajs4| 1 | +-----+------------+-----------+--------------------------------------------------+----------+--------------+ 5 rows in set (0.03 sec)
  5. Kas tur ko explain`ot. Jāizvelk pēdējie unikālie komentāri pēc `tid` (raksta id) pievienojot lietotāju tabulu pēc `uid` (lietotāja id) un rakstu tabulu pēc `tid`. Jāizvada pieci pēdējie komentētie raksti, tie nedrīkst atkārtoties, tapēc izmantojam DISTINCT, katram rakstam klāt piemetinam raksta jaunākā komentāra autoru un komentāra datumu.
  6. Jau izfiltrēju meklēšanas atslēgvārdus pie ievietošanas DB un atsevišķā laukā `keywords` ievietoju atslēgvārdus un izvadīju ar GROUP BY :)
  7. $result = mysql_query("SELECT DISTINCT (komentari.tid), komentari.datums as datumz, raksti.curl as raksta_curl, raksti.id as raksta_id, raksti.virsraksts as raksta_nosaukums, lietotaji.lietotajs as niks, lietotaji.id as lietotaja_id FROM komentari LEFT JOIN raksti ON raksti.id=komentari.tid LEFT JOIN lietotaji ON lietotaji.id=komentari.uid WHERE komentari.tips='raksts' AND komentari.id IN ( SELECT k2.id FROM komentari AS k2 WHERE k2.tid=raksti.id AND k2.datums IN ( SELECT MAX(k3.datums) FROM komentari AS k3 WHERE k3.tid=raksti.id ) ) GROUP BY komentari.tid ORDER BY komentari.id DESC LIMIT 5"); $hr = ''; while($data = mysql_fetch_array($result)) { echo $hr.'<span id="small"><a href="?view&profile='.$data['lietotaja_id'].'">'.$data['niks'].'</a> '.dienas(date('Y-m-d H:i', $data['datumz'])).'</span><br><b><a href="?raksts='.$data['raksta_id'].'&'.$data['raksta_curl'].'">'.$data['raksta_nosaukums'].'</a></b>'; $hr = '<hr>'; }
  8. tas jau tika mēģināts, diemžēl izvilka pareizi TIKAI datumu bet lietotāja niks palika tas pats
  9. jā ir arī tips bet tas neko šeit nemaina
  10. Pēdējo komentēto rakstu panelis, raksti neatkārtojas. Pie pēdējā komentētā raksta parādas niks, datums un raksta nosaukums. Pēdējie komentētie raksti parādas korekti, bet pie raksta klāt parādas nevis tas niks un tas datums kurš pēdējo reizi to rakstu komentēja bet pirmo reizi! Bet vajadzētu pēdējo komentāra niku un datumu. SELECT DISTINCT (komentari.tid), komentari.datums as datumz, raksti.id as raksta_id, raksti.virsraksts as raksta_nosaukums, lietotaji.lietotajs niks FROM komentari LEFT JOIN raksti ON raksti.id=komentari.tid LEFT JOIN lietotaji ON lietotaji.id=komentari.uid WHERE komentari.tips='raksts' GROUP BY komentari.tid ORDER BY komentari.id DESC LIMIT 5 komentari (tid ir raksta id un uid ir lietotāja id) id|datums|tid|uid|komentars
  11. tas taču papildus izvadīs tikai skaitu cik reizes ir meklēts googlē kopā EDIT: Kļūdījos, bet GROUP BY arī neder, jo refferer nav vienādi, viņam tak galā tiek piekabināti visādi pārlūka shiti, piemēram atslēgvārdi ir vienādi, bet... http://www.google.lv/search?hl=lv&q=web+kameras&btnG=Google+mekl%C4%93%C5%A1ana&meta=&aq=f&oq= http://www.google.lv/search?q=web+kameras&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a
  12. Sveiki, man ir while cikls, kas izvada meklēšanas frāzes ar ko ieiets lapā no googles, bet tas tā... Negribu izvadīt vienādas frāzes, bet gan izvadīt tikai vienu no vienādajām un galā pierakstīt skaitu cik tad ir, piemēram: Anekdotes par seksu 5 Anekdotes zaķītis 2 Lamuvārdi 2 Windows vista instalācija .. ...... utt.. Te mans murgs: $result = mysql_query("SELECT * FROM hits WHERE referer LIKE '%google%' AND referer LIKE '%search%' AND referer LIKE '%q=%' ORDER BY hit_id DESC") or die(mysql_error()); while($data = mysql_fetch_array($result)) { $referer = substr($data['referer'], 7); list($domain, $address) = explode('/', $referer); list($shitt, $phrasee) = explode('q=', $address); list($phrase, $shit) = explode('&', $phrasee); echo '<tr> <td>'.htmlspecialchars(urldecode(str_replace('+', ' ', $phrase))).'</td> </tr>'; }
  13. Kā var ne tā izdzēst? Ja izdzēš, tad izdzēš!
  14. Pentiums

    count

    ja komentāru skaitu vajag izvadīt pie katra jaunuma/raksta tad es daru šādi: SELECT raksti.*, COUNT(komentari.id) as kom_skaits FROM raksti LEFT JOIN komentari ON raksti.id=komentari.rid AND komentari.tips='raksts' GROUP BY raksti.id ORDER BY raksti.id DESC
  15. http_post_fields!!! Cik saprotu ar šo funkciju var nosubmitēt formu via PHP, Piemēri visur tik maz, pašā manuālī ar īsti nav skaidrs! Kautko pats mēģināju bet nesanāk. Nu vajag uztaisīt cron skriptiņu kas rūterim nospiež Restart pogu. Varbūt kāds var parādīt piemēru? te pati forma: http://paste.php.lv/51c57a689c0ec33eeeb3e0...ang=html4strict
  16. Sveiki. Kādu laiciņu neesmu te runājis :) Tātad, veidoju spēli, jāatbild uz jautājumu, priekšā tiek dota atbilde kurā ir aizklāts vārds. Piemēram, šoreiz atbilde ir "vārds" un tas ir aizklāts šādi "-----", 5 burti! Es vēlos atklāt kādu burtu, nu, piemēram, trešo substr_replace('-----', 'r', 2, -2); Whoala.. iegūstam "--r--"! Rodas tagad jautājums! Kā izrēķināt tās divas vērtības substr_replace funkcijai "start" un "length" izmantojot burtu skaitu vārdā un padodamo burtu no kreisās uz labo pusi, piemēram šoreiz tas bija 3!
  17. ja jau tu tik advancēts ka vari uzkodēt forumu, tad kur ir problēma ar smiles ielikšanu?
  18. kā lai izlabo ķeburus garumzīmju un mīkstinājuma zīmju vietā http://paste.php.lv/3292/nonum šeit?
  19. Kādam nav aizķēries kāds vārda dienu sql dumps? Vai kāds skriptiņš? Vārda dienu gribās noteikt! :)
  20. http://www.google.lv/search?q=JFolder%3A%3...lient=firefox-a pilna google!
×
×
  • Create New...