Jump to content
php.lv forumi

KalashaLv

Reģistrētie lietotāji
  • Posts

    14
  • Joined

  • Last visited

Posts posted by KalashaLv

  1. You. Es dumjš pašlaik esmu un netieku galā ar postu un topiku skaita izvadi.

    $q = mysqli_query($conn, "SELECT COUNT(p.topic_id) AS post_count FROM posts p, topics t WHERE p.topic_id = t.id AND p.topic_id = c.id");

    viņš izvada 0

    un ja šādi - $q = mysqli_query($conn, "SELECT COUNT(p.topic_id) AS post_count FROM posts p, topics t WHERE p.topic_id = t.id");
    viņš izvada 3 (jo datubāzē ir 1 topiks un 2 posti ar id "23")

  2. 1 hour ago, aaxc said:

    Nezinu, kā tu beigās realizēji, bet ja tu visu liec stringā un pēc tam drukā ārā, tad tā arī dari - liec visu vienā stringā, teiksim $categories, nevis daļu categories un daļu subcat. Visu outputu vienkārši appendo klāt $categories .= ...

    dabuju visu pie dzīvības! Paldies liels!
    Mana slavenā kļūda bij tāda, ka es biju aizmirsis izdzēst otro while, kas iekļāva subkategorijas!

     

    Bet tagad es saskaros ar problēmu, ka pie vienas kategorijas pievienojot 2 subkategorijas viņš izvelk šādi

     

    testest  - kategorija (nebij te jābūt)
    Category 1.1 - Test category 1.1 (šim bij jābūt pie 1 kategorjas.
  3. 2 hours ago, aaxc said:

    1. Neizmanto `mysql_*` funkcijas:

    Warning

    This extension was deprecated in PHP 5.5.0, and it was removed in PHP 7.0.0. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information. Alternatives to this function include:

    2. Nav nepieciešams veidot tabulu jaunām sub-kategorijām (vai tev būs 3. tabula sub-subcategories? Kas ar katru nākamo līmeni?), izmanto parent_id principu.

    Pievienot jaunu lauku, piemēram to pašu `parent_id`, kas pirmā līmeņa kategorijām būs 0. Nākamajām tajā pašā laikā ievieto attiecīgi augsējās kategorijas ID. Utt. 
    Tad pirmais atlasījums būš SELECT * FROM categories WHERE parent_id = 0; un iekš while vari likt SELECT * FROM categories WHERE parent_id = {$id}; un iegūt tieši tās kategorijas, kas tev ir nepieciešamas attiecīgajam elementam. Pietam to var arī rekursīvi dzīt cauri tik ilgi, kamēr atrodas kāda kategorija. (laigan šeit protams labāk veikt 1 DB pieprasījumu un pēc tam apstrādāt rezultātus, nevis veikt n-tos query pieprasījumus, bet sākumam var arī šādi).

    3. Kā jau minēja, noformatē savu kodu skaisti lasāmu. Ne tikai citiem, bet arī sev. Paies daži mēneši un tu vairs nesapratīsi, kas tur rakstīts. Tur pat komentāru nav.

    4. Tomēr mēģini nedrukāt ārā katru atrasto rindiņu. Izveidot sākumā, teiksim $output = ''; un pēc tam appendo katru rindu tam $output .= $categories;. Bet pašu outputu veic tikai beigās. Tādi to nepiedrazo headerus, ja uzturu vairākus mainīgos, varēsi vieglāk nokontrolēt kur attiecīgais elements parādās.

    Okey, man viss izdevās, paldies! Bet tagad saskāros ar problēmu. 
    Kā man izvilkt su bkategorijas zem kategorijām?
    Jo viņš Sub kategorijas izvelk tajā pašā rindā kurā kategorijas.

    Category 1

    Category 2

    Category 3

    Subcategory1

    Subcategory2

    Subcategory 3

     

    Bet vajadzētu taču izvilkt
     


    Category 1

    Subcategory1

     

    Category 2

    Subcategory2

     

    Category 3

    Subcategory 3

     

    kā man viņu izvilkt? es mēģināju 

    echo $categories;

    echo $subcat;

     

  4. 26 minutes ago, Alnis said:

    Sāc ar koda lasāmības noformēšanu, piemēram:

    
    <?php 
    include_once("config_rel.php"); 
    $sql = "SELECT * From categories ORDER BY category_title ASC"; 
    $res = mysql_query($sql) or die(mysql_error()); 
    $categories = ""; 
    
    if (mysql_num_rows($res) > 0) { 
    	while ($row = mysql_fetch_assoc($res)) {         
    		$id = $row['id'];         
    		$title = $row['category_title'];         
    		$description = $row['category_description'];         
    		$categories .= "<a href='view_category.php?cid=".$id."' class='cat_links'>".$title." - <font size='-1'>".$description."</font></a>";     
    	}     
    	echo $categories; 
    } 
    else {     
    	echo "<p>Nav pievienota neviena kategorija pašlaik!</p>"; 
    } 
    ?>

    neviens neidziļināsies "siena kaudzē"!

    Hey, jā, atvaino. Sen neesmu rakstijis forumos un prasijis pēc palīdzības :D

    Vakardien kaut ko taisot centos izveidot subkategorijas.
    Viņš viņas izvelk, bet tagad viņš viņu parāda kā kategoriju.
    Vienīgais ar ko netieku galā ir, kā viņu pārvērst par subkategoriju. ar MYSQL - WHERE viņš ķaut kā nesaistās un parāda ka nav kategoriju.

     

    <?php
    include_once("config_rel.php");
    $sql = "SELECT * From categories ORDER BY category_title ASC";
    $res = mysql_query($sql) or die(mysql_error());
    $categories = "";
    $subcat = "";
    if (mysql_num_rows($res) > 0) {
    while ($row = mysql_fetch_assoc($res)) {
    	$catName = $row['category_title'];
    		$id = $row['id'];
    		$title = $row['category_title'];
    		$description = $row['category_description'];
    		$categories .= "<a href='view_category.php?cid=".$id."' class='cat_links'>".$title." - <font size='-1'>".$description."</font></a>";
    	}
    	echo $categories;
    
    		$sql2 = "SELECT * FROM subcategories ORDER BY id ASC";
    	$res2 = mysql_query($sql2) or die(mysql_error());
    	
    	if (mysql_num_rows($res) && ($res2) > 0) {
    	while($row2 = mysql_fetch_assoc($res2)) {
    		        
    		$subtitle = $row2['subcat_title'];
    		$subid = $row2['id'];
    	$subcat .= "<a href='#' class='cat_links'>".$subtitle."</a>";	
    	}
    	echo $subcat;
    	} else {
    		echo "Nav pievienota neviena Sub Kategorija!";
    	}
    		
    } else {
    	echo "<p>Nav pievienota neviena kategorija pašlaik!</p>";
    }
    
    ?>

     

  5. Sveiki! Visu sataisiju, bet nu tik gudri kā izveidot subkaregorijas man nesanāk :D
    Kāds varētu lūdzu izpalidzet?

    index.php skripts:
     

    <?php include_once("config_rel.php"); 
    $sql = "SELECT * From categories ORDER BY category_title ASC"; 
    $res = mysql_query($sql) or die(mysql_error()); 
    $categories = ""; 
    if (mysql_num_rows($res) > 0) {
      while ($row = mysql_fetch_assoc($res)) {         
        $id = $row['id'];        
        $title = $row['category_title'];        
        $description = $row['category_description'];        
        $categories .= "<a href='view_category.php?cid=".$id."' class='cat_links'>".$title." - <font size='-1'>".$description."</font></a>";    
      }     echo $categories; 
    } else {    
      echo "<p>Nav pievienota neviena kategorija pašlaik!</p>"; 
    } 
    ?>

     

    view_category.php skripts:

    <?php
    include_once("config_rel.php");
    $cid = $_GET['cid'];
    if (isset($_SESSION['uid'])) {
    	$logged = " | <a href='create_topic.php?cid=".$cid."'>Izveidot jaunu ierakstu</a>";
    } else {
    	$logged = " | Tev ir jāienāk sistēmā lai izveidotu ierakstu!";
    }
    $sql = "SELECT id FROM categories WHERE id='".$cid."' LIMIT 1";
    $res = mysql_query($sql) or die (mysql_error());
    if (mysql_num_rows($res) == 1) {
    	$sql2 = "SELECT * FROM topics WHERE category_id='".$cid."' ORDER BY topic_reply_date DESC";
    	$res2 = mysql_query($sql2) or die(mysql_error());
    	if (mysql_num_rows($res2) > 0) {
    	@$topics .= "<table width='100%' style='border-collapse: collapse;'>";
    	$topics .= "<tr><td colspan='3'><a href='index.php'>Atgriezties uz sākumlapu!</a>".$logged."<hr /></td></tr>";
    	$topics .= "<tr style='background-color: #ddd;'><td>Topic Title</td><td width='65' align='center'>Replies</td><td width='65' align='center'>Views</td></tr>";
    	$topics .= "<tr><td colspan='3'><hr /></td><tr>";
    	while ($row = mysql_fetch_assoc($res2)) {
    		$tid = $row['id'];
    		$title = $row['topic_title'];
    		$views = $row['topic_views'];		
    		$date = $row['topic_date'];
    		$creator = $row['topic_creator'];
    		$topics .= "<tr><td><a href='view_topic.php?cid=".$cid."&tid=".$tid."'>".$title."</a><br /><span class='post_info'>Posted by: ".$creator." on ".$date."</span></td><td align='center'>0</td><td align='center'>".$views."</td></tr>";
    		$topics .= "<tr><td colspan='3'><hr /></td></tr>";
    	}
    	$topics .= "</table>";
    	echo $topics;
    } else {
    	echo "<a href='index.php'>Atgriezties uz Sākumlapu</a><hr />";
    	echo "<p>Šajā kategorijā nav topiku!".$logged."</p>";	
      }
      
    } else {
    	echo "<a href='index.php'>Atgriezties uz Sākumlapu</a><hr />";
    	echo "<p>Šāda kategorija vēl nepastāv!<p>";
    }
    ?>



     

  6. Hey! Sen neesmu šeit neko rakstījis :D
    Tātad, vai kāds man nevarētu izpalīdzēt.

    Vēlējos izveidot kaut ko līdzīgu kā uz ipb 4.x , kad tevi ietago Čata ziņā. (Piem "@kalashaLv Sveiks!") Nomainās background lietotājam, kurš tika ietagots.

     

    Es mēģināju apvienot šo

    <if test="showAtTag:|:$this->settings['shoutbox_at_tag']">

    ar šo

    <span class='shoutbox_text'>{$d['s_message']}</span>

    Bet nesanāca.

     

    Nezinu vai centos pareizi piekļūt tādai lietai. Neesmu īsti ņēmies ar tādām lietām :)

    Ja nu kas, izmantoju ipb 3.4.9 (Jā, vēl jo projām xD)

    Ja ir kāds, kas var palīdzēt, liels paldies jau iepriekš :)

  7. 32 minutes ago, zeCode said:

    Tad izmanto loģiku, matemātiku vai uzzime vizuāli shēmu (blokshēmu) varbūt vieglāk saprast.

    • Janodefinē katra nakamā līmņa minimālais punktu skaits $levels[ 2 => 100, 3 => 150, 4 => 200...]
    • Atrodi aktīvo līmeni . Piemēram, ja lietotājam ir 152 punkti tad izejot cauri visiem leveliem lai atrastu pašreizejo līmeni  ( 100 <= 152 && $level > $user_level) {$user_level = $level;} tadejadi tas apstāsies pie 3 līmeņa ...
    • Procenti nepieciešami lai sasniegtu nākamo līmeni .  Piemērs   1 -  (152 - 150) / (200 - 150)   ... 1 - 2 / 50 = 1 - 0.04 = 96%
    
    $user_level = 1;
    $levels = [1 => 0, 2 => 100, 3 => 150, 4 => 200];
    $user_points = 200;
    
    foreach ($levels as $level => $points) {
        if ($points <= $user_points && $level > $user_level) {
            $user_level = $level;
        }
    }
    
    $level_start_points = $levels[$user_level];
    $next_level_start_points = isset($levels[$user_level + 1]) ? $levels[$user_level + 1] : 0;
    $prc = ($next_level_start_points) ? ($user_points - $level_start_points) / ($next_level_start_points - $level_start_points) : NULL;

     

    Ja to automatizē, something like this?

    $user_level = $ipbwi->member->pips();
    $levels = [1 => 0, 2 => 10, 3 => 20, 4 => 30, 5 => 40, 6 => 50];
    $user_points = $info['posts'];
    
    foreach ($levels as $level => $points) {
        if ($points <= $user_points && $level > $user_level) {
            $user_level = $level;
        }
    }
    
    $level_start_points = $levels[$user_level];
    $next_level_start_points = isset($levels[$user_level + 1]) ? $levels[$user_level + 1] : 0;
    $prc = ($next_level_start_points) ? ($user_points - $level_start_points) / ($next_level_start_points - $level_start_points) : NULL;

     

  8. 2 minutes ago, Val said:

    Ehh :D
    pieņemsim, ka userim ir 5 "pipshi".
    Ja tu pats izvēlies maksimālo "pipshi" skaitu katrā līmenī, ko useris var iegūt, piemēram, = 100, tad
    procentuāli tas sanāk 5x100/100 = 5% no "pipshimax".

    Labāk jau skaiti pipshus kopā (0 līdz 10'000, pofig) un tad dali ar pipshimax, tad dalījums būs esošais līmenis, bet atlikums būs esošie pipshi, Pamatskola.

    paskaidrot tu māki, es darīt to nemācēšu. 
    tur tā lieta, ka mācos php tikai :D

     

  9. Heyy, problēmiņa.

    Vēlos uztaisīt precentage līniju kas sākas no jauna ar jaunu ranga sasniegšanu.

    domāju, ka var šādi, bet kas man ir jāraksta iekš "pipshimax"?

    gan jau ka šis kods ir galīgi garām.

    ā un ja kas izmantoju ipbwi.

    $pipshi = $ipbwi->member->pips();
    pipshimax = ;
            $percents = round(($pipshi / $pipshimax) * 100);

  10. Sveiki, vēl jo projām izmantoju ipb 3.4.x un saskāros ar interesantu uzdevumu, ar kuru nekādīgi netieku galā.

    priekš php izmantoju ipb 3.6.6 un cenšos pārvērst ar šo kodu, <?php echo $ipbwi->member->pips(); ?> , no pips uz līmeņiem. 

    var kāds lūdzu man izveidot, kaut kādu vieglu skriptiņu, kas no pips izvilktu līmeni vai kaut ko tādu.

    idejā tāda, ka ir vajadzīgs kaut kas līdzīgs, ka viņš parāda cik postu pietrūkst līdz nākamajam līmenim un parāda līniju, kas maina width procentus ierakstot postus, kā jauns līmenis, tā līnija sākas no jauna un tā.

     

  11. Heyy, ir kaut kādā vedā iespējams pievienot class="active"?

    Lūk navigation :

    <nav>
                    <ul>
                        <li><a href="<?=$url;?>">Sākums</a></li>
                        <li><a  href="<?=$url;?>/forums">Forums</a></li>
                        <li><a <?php if(isset($_GET['stats']))   { echo " class=\"active\""; }  ?> href="#">Stati</a></li>
                        <li><a <?php if(isset($_GET['bans']))   { echo " class=\"active\""; }  ?>  href="#">Bani</a></li>
                        <li><a <?php if(isset($_GET['shop']))   { echo " class=\"active\""; }  ?> href="#">Veikals</a></li>
                        <li><a <?php if(isset($_GET['contacts']))   { echo " class=\"active\""; }  ?> href="<?=$url;?>?contacts">Kontakti</a></li>
                    
                    </ul>
                </nav>

     

    lūk kur izlasa lapas :

     

    if(isset($_GET['poll'])) {    $link = 'admin/add-poll.php';
                                    $vieta = "poll";
                                    $title = "Aptaujas labošana";}
    else if(isset($_GET['admin'])) {$link = 'admin/admin.php';
        $title = 'Admina kontroles panelis';
        $vieta = "admin";}
    else if(isset($_GET['add_img'])) {$link = 'admin/add-img.php';
        $title = 'Pievienot jaunumu bildi';
        $vieta = "add_img";}
    else if(isset($_GET['add_ban'])) {$link = 'includes/bans.php';
        $title = Bani';
        $vieta = "bans";}
        else if(isset($_GET['contacts'])) {$link = 'includes/contacts.php';
        $title = 'Kontakti';
        $vieta = "contacts";}
    
      else if(isset($_GET['contacts'])) {$link = 'includes/stats.php';
        $title = 'Stati';
        $vieta = "stats";}
    else {     $link = 'includes/news.php';
            $vieta = "news";
            $title = "Jaunumi";}

     

     

    vietās, kur, navigācijā, ir <?php if(isset($_GET['contacts']))   { echo " class=\"active\""; }  ?> tur iet, bet man vajag pivienot, lai rāda "active" Sākumlapā, jo ar to pašu metodi nedarbojas, jo na var $_GET

×
×
  • Create New...