Jump to content
php.lv forumi

reiniger

Reģistrētie lietotāji
  • Posts

    239
  • Joined

  • Last visited

Everything posted by reiniger

  1. Šitais nostradaja. Paldies
  2. Sveiki. Vajadzīga neliela palīdzība. Vajadzīgs lai ielādē test.php pec visas lapas ielādes un lai tas parādītos ta lēnām iznisrstoši. <script type="text/javascript"> function showNewContent() { $('#div_show').show("slow"); } $(document).ready(function() { $('#div_show').load('/test.php','',showNewContent()); }); </script> Šādu neta atradu, bet nestrādā! Kas par vainu varētu būt?
  3. Paldies par šito, bet vai ir iespēja panākt ka var atzīmet vairākus uzreiz?
  4. Sveiki. Ir "nelielas" Javascript zināšanu trūkums. Ir sekojoša tabula un uzpiežot uz attiecīgas rindiņas šī rindiņa tiek iezīmēta(background nomainas) un tiek piefiksēts rindiņas ID lai talak nospiežot Submit attiecīgie ierakstus pec ID numura varētu izdzēst. <script language="JavaScript"> function actionClick(Aval) { document.myform.formVar.value=Aval } </script> <form method="post" name="myform"> <table> <tr> <td>ID</td> <td>tilte</td> <td>tekst</td> </tr> <tr style="background:red" onclick="actionClick(1)"> <td>1</td> <td>test</td> <td>teksts</td> </tr> <tr style="background:red" onclick="actionClick(2)"> <td>2</td> <td>test2</td> <td>teksts2</td> </tr> </table> <input type="text" name="formVar" value=""> <input type="submit" value="dzest"> </form> Tas iesakuma ideja! Mana doma ir vertibu saglabat viena input formVar velak nomainot uz hidden. bet ka labak panākt to ka ieķeksē varākus tad nosūtas ta ka masīvs bet ir iespēja arī kādu no atķeksētajiem izņemt arā no saraksta. Kā labāk uztaisīt?
  5. Paldies, palīdzēja. MYSQL SELECT t2.t2ID, t2.burk-COALESCE(SUM(t3.burk),0)-COALESCE(t4.burk,0) AS atlburk FROM tabula1 AS t1 LEFT JOIN tabula2 AS t2 ON (t2.t1ID=t1.t1ID) LEFT JOIN tabula3 AS t3 ON (t3.t2ID=t2.t2ID) LEFT JOIN ( SELECT t2ID, SUM(burk) AS burk FROM tabula4 GROUP BY t2ID) AS t4 ON (t4.t2ID = t2.t2ID) GROUP by t2.t2ID Noņemot SUM no COALESCE(t4.burk,0) viss aizgāja.
  6. Sākums šeit Jauna problēma ar datu atkārtošanos Piemērs tabula1 // noliktavas tabula t1ID | val | title 1 | 1 | nol1 2 | 1 | nol2 3 | 1 | nol3 4 | 2 | nol4 tabula2 // burkānu kastes konkreta noliktava t2ID | t1ID | burk 1 | 1 | 6 2 | 1 | 5 3 | 2 | 2 4 | 2 | 2 5 | 3 | 3 6 | 4 | 9 tabula3 // izvestais burkanu daudzums no kastes t3ID | t2ID | burk 1 | 1 | 4 2 | 2 | 2 3 | 3 | 2 4 | 4 | 1 tabula4 // pārkrāmētās kastes t4ID | t2ID | burk 1 | 1 | 1 2 | 2 | 1 MYSQL SELECT t2.t2ID, t1.title, t2.burk-COALESCE(SUM(t3.burk),0)-COALESCE(SUM(t4.burk),0) AS atlburk FROM tabula1 AS t1 LEFT JOIN tabula2 AS t2 ON (t2.t1ID=t1.t1ID) LEFT JOIN tabula3 AS t3 ON (t3.t2ID=t2.t2ID) LEFT JOIN tabula4 AS t4 ON (t4.t2ID=t2.t2ID) WHERE t1.val = 1 GROUP by t2.t2ID HAVING atlburk != 0 Rezultāts t2id | title| atlburk 1 | nol1 | 1 2 | nol1 | 2 Bet ja manā tabula4 ir divreiz ieraksts ar atiecīgo t2ID at no šī tabulas tiek noņemts 2x vairāk, tas ir, ja vajadzetu noņemt 2 un 2 summa 4, bet tiek noņemts 2,2,2 un 2 summa 8. Paskatijos lai query izdruka visus datus ar * redzeju ka vienkārši tas sasumme ierakstus tadeļ citas tabulas laikam liek atkārtot ierakstus, kur piemeram 2 vieta tiek izvaditi 4 ieraksti. Ceru ka sapratat manu problēmu! Ka varētu izdarīt lai tikai attēloti tiktu tikai tik cik ir tabula4 ieraksti? Ar kaut kādu atsevišķu SELECT?
  7. Prieks ka ir kur uzjautāt grūtos gadījumos. Paldies. Šādi viss strādā, ja kādam vajag. SELECT t2.t2ID, t1.title, t2.burk-COALESCE(SUM(t3.burk),0) AS atlburk FROM tabula1 AS t1 LEFT JOIN tabula2 AS t2 ON (t2.t1ID=t1.t1ID) LEFT JOIN tabula3 AS t3 ON (t3.t2ID=t2.t2ID) WHERE t1.val = 1 GROUP by t2.t2ID HAVING atlburk != 0
  8. Sveiki. Nepieciešams padoms. Man ir jaatlasa ieraksti kur konkretas colonas starpiba nav nulle. Uzrakstišu vienkāršotu piemēru, jo manas tabulas ir diezgan sarežģītas un grūti būs saprast ko man vajag panākt. :) Piemērs tabula1 // noliktavas tabula t1ID | val | title 1 | 1 | nol1 2 | 1 | nol2 3 | 1 | nol3 4 | 2 | nol4 tabula2 // burkānu kastes konkreta noliktava t2ID | t1ID | burk 1 | 1 | 6 2 | 1 | 5 3 | 2 | 2 4 | 2 | 2 5 | 3 | 3 6 | 4 | 9 tabula3 // izvestais burkanu daudzums no kastes t3ID | t2ID | burk 1 | 1 | 4 2 | 2 | 2 3 | 3 | 2 4 | 4 | 1 Man ir nepieciešams pēc tabula1.val = 1 atlasīt, kur vēl ir palikuši burkāni. SELECT t2.t2ID, t1.title, t2.burk-SUM(t3.burk) AS atlburk FROM tabula1 AS t1 JOIN tabula2 AS t2 ON (t2.t1ID=t1.t1ID) JOIN tabula3 AS t3 ON (t3.t2ID=t2.t2ID) WHERE t1.val = 1 GROUP by t2.t2ID HAVING atlburk != 0 SUM nepieciešams, jo var būt vairāki izvesti gadīju no konkrētas kastes It kā viss strādā pareizi. Rezultāts t2id | title| atlburk 1 | nol1 | 2 2 | nol1 | 3 4 | nol2 | 1 Problēma sakas tad, kad tabula3 nav ieraksta ar tabula2.t2ID vērtību! Kur val ir 2 tad table2.t2ID 6 ir 9, bet nav vertību, ko atņemt no tabula3 un šī kaste neparādas sarakstā, ka tajā ir burkāni! Kā panākt to, ja nav šads ieraksts iekš tabula3, tad ta vieta atņemas 0!
  9. Paldies. Nezinu ko biju pats sadomajies, bet izradijas ti vienkārši. :)
  10. Sveicināti. man tabula ir ieraksti ar start_date un end_date. id | title | start_date | end_date 1 | test1 | 2010-08-10 | 2010-08-13 2 | test2 | 2010-08-11 | 2010-08-14 un man ir nepieciešams atlasīt ierakstus pec laika no līdz, piemēram, 2010-08-12 lidz 2010-08-30, tas bus iekš formas ar input laukiem. mans variants ko es iedomājos varētu uzskaitīt visas dienas no input ievaditā laika intervāla un tad pārbaudīt vai kāds no šiem datumiem ietilpst datubāzes laika intervālā. Vai ir kāds labāks variants? PS: pats vēl neesu izmēģinājis savu variantu
  11. reiniger

    Jquery keyup

    $('#username').keyup(function(e){ if (this.timer) clearTimeout(this.timer); this.timer = setTimeout(function () { is_available(); $('#user_msg').html(loading_html); // adding the loading text or image }, 1000); }); Nu tad es izveidoju lai nedaudz aizture ira.
  12. reiniger

    Jquery keyup

    Šitais strādā. Paldies...
  13. reiniger

    Jquery keyup

    šo kodu neta atradu, ar šo labojumu ar nekas nemainijas. Tikai parbaude notiek pie pirmas ievades.
  14. reiniger

    Jquery keyup

    Nepieciešams lai ievadot tekstu ja tāds jau eksistē parāditos paziņojums. Es izmantoju šādu kodu $(document).ready(function() { var timeOut = null; // this used for hold few seconds to made ajax request var loading_html = 'Check ...'; // just an loading image or we can put any texts here //when button is clicked $('#username').keyup(function(e){ if (timeOut != null) clearTimeout(ajaxCallTimeoutID); timeOut = setTimeout(is_available, 1000); // delay delay ajax request for 1000 milliseconds $('#user_msg').html(loading_html); // adding the loading text or image }); }); function is_available(){ //get the username var username = $('#username').val(); //make the ajax request to check is username available or not $.post("check.php", { username: username }, function(result) { if(result != 0) { $('#user_msg').html('Not Available'); } else { $('#user_msg').html('<span style="color:#006600;">Available</span>'); } }); } Apstrada: <?php //data connection file include("connect_server.php"); $username = mysql_real_escape_string($_POST['username']); $result = mysql_query('select Client from ClientRef where Client = "'. $username .'"'); $cnt = mysql_num_rows($result); print($cnt); ?> šis kods nostrādā tikai uz vienu pogas nospiedienu un visu laiku rada ka ir derīgs teksts. Ja uzreiz iekopē visu vārdu tad atpazīst ka jau tāds eksistē. Kā panākt lai pārbaude notiek pēc katra spiediena?
  15. vienalga ka definets mainigais viņš kaut kur pazud... problema ir atrisinata un nava īpaši aktuala, bet vienalga interesanta lietiņa...
  16. Lapa ir divās valodās latviešu un krievu. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> Nebija mans darbs un bija caur define mainīgajiem. <h1><?=mail?></h1> <p><?=kaut_kas?></p> It kā viss strāda ok bet ik pa laikam е-почте vieta paradas ?????????, bet $kaut_kas rādas pareizi krievu valodā. Teiksim ta ka no 15 refresh lapai 3 reizes neatēlojas krievu valoda, bet gan jautajuma zīmes. uz kādu es izlaboju un tagad strādā. valoda mainas ar mainigajiem if($lang == 'lv') { $mail='e-pasts'; $kaut_kas = 'kaut kas'; } else { $mail=' е-почте'; $kaut_kas = 'силу'; } html kodiņš <h1><?=$mail?></h1> <p><?=$kaut_kas?></p> Iespējams kaut kas ar faila iesaukšanu nebija kārtība.
  17. mysql_connect () or die ('Nevar pieslegties jo: ' . mysql_error()); mysql_select_db ("test"); mysql_query("SET NAMES UTF8"); Pamēģini šitā... un iekš <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  18. Labs variants lai vārdus nenorautu. <?php $text = $row_recap['text']; if (strlen($text) > 300) { $ext = "... <a href='readmore.php'>read more</a>"; } else { $ext = ""; } function elliStr($s,$n) { for ( $x = 0; $x < strlen($s); $x++ ) { $o = ($n+$x >= strlen($s)? $s : ($s{$n+$x} == " "? substr($s,0,$n+$x) . "..." : "")); if ( $o!= "" ) { return $o; } } } echo (elliStr("$text", 300)) . $ext; ?> Jo citreiz gadas ka pie garumzīmes tiek beigts attelot tekstu un tad pārlūkā parādas jautajuma zīme kvadratiņā... :)
  19. Es jau pats no sākuma mēģināju šo variantu, bet mana datubāze kaut ko nežēlīgi domā un nedod man rezultātu. Vienkārši apnīk gaidīt. Story - 375 ieraksti story_votes - 254 730 ieraksti Izpildijas :) Parādu rindas 0 - 29 (378 kopā, Vaicājums ilga 281.3598 s) taka biku pa ilgu...
  20. Sveiki. Man nepieciešams izveidot reitingu par nobalsotiem rakstiem. Tabulas story id | text story_votes id | id_p | ip | date Idejas smēlos no šejienes mans cods: SELECT story.id, votes FROM story ,(SELECT id_p,COUNT(*) AS votes FROM story_votes GROUP BY id_p) AS votes WHERE (story.id=votes.id_p) ORDER BY `votes`.`votes` DESC Viss izdrukājas skaisti, bet ir viena problēma, ja zem tabulas "story_votes" nav nobalsots nevienu reizi, tad šis stāsts netiek izdrukāts. Ka izdrukāt story bez ievietota record iekš story_votes? P.S: Zinu, ka varu, teiksim ievietot pa vienam ierakstam iekš story_votes un tad pie izdrukāšanas katram rezultātem -1 vai arī piefiksēt visus id un izdrukat story kas nava šajā masīvā, bet gribētos uzzināt ka to ar SQL var dabūt gatavu!
  21. uzliec pārbaudi pirms ziņas saglabāšanas... if($_REQUEST['msg']){ saglaba zinu.... }
  22. Pats ar šo scriptu esmu apskatījis. Šeit download
  23. Atrisināju: funtion count($m){ $result = mysql_query("SELECT * FROM post JOIN category ON (post.id_p=category.id) JOIN category AS cc ON (category.id_p=cc.id) WHERE NOW() >= start_date AND NOW() <= end_date AND (category.id=$m OR category.id_p=$m OR cc.id_p =$m)"); $all_c = mysql_num_rows($result); print_r($all_c); } Paldies par palīdzību!
  24. Mans mēģinājums: SELECT * FROM post JOIN category ON (post.id_p=category.id) RIGHT JOIN category AS cc ON (category.id=category.id) WHERE NOW() >= start_date AND NOW() <= end_date AND (category.id=1 OR category.id_p=1 OR (category.id_p = cc.id AND cc.id_p =1)) Šāds select ar funkciju count(1) man atgriež pareizu ierakstu skaitu! BET tagad izpildot count(113) vai count(115) man tiek izdrukādts visu categoriju skaits nevis tikai manu vienu ierakstu! Tad sanāk ka nava iespējams izveidot tādu select lai atlasītu pareizi ar count(1) !
×
×
  • Create New...