Prikaz zapisa sa istim ID-jem putem phpa

Dakle, trebao bi malu pomoć oko ovog.

Imam skriptu koju moram malo preurediti da bi mi odgovarala.

U mysql bazi, u određenoj tablici postoje kolone “name”, “parent”, “ID” i ostale te naravno i zapisi ispod tih naziva.

Putem slijedećeg izraza u određenom .php fajlu dobivam ispis svih ID-jeva zapisa u toj tablici:

$row->id;

Znači kada upotrijebim gore navedeni izraz, dobivam listu ID-jeva svih zapisa iz željene tablice.

Mene zanima, kako bih mogao dobiti listu samo onih zapisa koji imaju “ID” jednak 0 ili npr 10?

Hvala!

$var = mysql_select(“SELECT * FROM ime_tablice WHERE ID = 1”);
$rezultat = mysql_fetch_row($var);

Tako nekako, već sam zaboravio kako točno ide.

Pogledaj si php manual za navedene funkcije.

[quote=“Robert.Kavgic”]Dakle, trebao bi malu pomoć oko ovog.

Imam skriptu koju moram malo preurediti da bi mi odgovarala.

U mysql bazi, u određenoj tablici postoje kolone “name”, “parent”, “ID” i ostale te naravno i zapisi ispod tih naziva.

Putem slijedećeg izraza u određenom .php fajlu dobivam ispis svih ID-jeva zapisa u toj tablici:

$row->id;

Znači kada upotrijebim gore navedeni izraz, dobivam listu ID-jeva svih zapisa iz željene tablice.

Mene zanima, kako bih mogao dobiti listu samo onih zapisa koji imaju “ID” jednak 0 ili npr 10?

Hvala![/quote]
pretpostavljam da ti je $row onda objekt, tj klasa…

ako je tako onda napravi u klasi public funkciju za returnanje id-a s vec parametrom kojim zelis(< > = <= >=)

a mozes i pomocu toga, jer ako $row->id returna sve id-eve, onda samo s foreachom sve provjeri…

foreach($row->id as $id)
{
if($id == 0 || $id == 0) {/ono sto zelis s tim/}
}

[quote=“Gosaric”]$var = mysql_select(“SELECT * FROM ime_tablice WHERE ID = 1”);
$rezultat = mysql_fetch_row($var);

Tako nekako, već sam zaboravio kako točno ide.

Pogledaj si php manual za navedene funkcije.[/quote]
mislim da mu ne treba trazenje podataka iz baze, jer ako je dobro naveo $row->id returna sve id-eve onda to vec radi u klasi, nece opet radit, treba samo taj array proci…

Tako je, ne trebam iz baze.

Ovo što sam stavio već returna kako kažeš sve id-jeve.

Mislim da sam možda krivo izjasnio što trebam.

Dakle konkretno, radi se o kategorijama oglasa.

Root kategorije imaju id 0, dok ostale imaju drugačije vrijednosti, ovisno dali su parent, ili slično.

Mene zanima kako ja mogu prikazati sve kategorije koje imaju id 0 pomoću nekakvog arraya…

Znači bukvalno, prikaži sve kategorije kojima je id jednak nuli.

Hvala vam na pomoći.

dobro, reci koja ti je onda funkcija u klasi kojom dobijas array s podatcima kategorija, i koje podatke iz tog arraya treba(navedi tocno nazive polja unutar arraya), tako cu ti napisati kako da provjeris i dobijes izlistanje koje trebas

ili daj cijeli kod klase, pa ti jos lakse pomognem tako da ti sve u klasi napravim…

E sada, pošto se malo teže snalazim po tuđim kodovima, a nije da sam previše baš u samom phpu, postaviti ću ti kodove koje koristim za prikaz tih kategorija.

Radi se o dropdown odabiru kategoriju, a ja želim napraviti step-by-step.

Dakle da bi se prikazao dropdown odabir kategorije, koristi se slijedeći kod:

<?php
	  $target = JROUTE::_("index.php?option=com_adsmanager&task=save&Itemid=".$this->Itemid); 
	  if ($this->nbcats == 1)
	  {
		$this->displaySingleCatChooser(@$this->content->id,$this->conf,"com_adsmanager",$this->cats,$this->catid,$this->Itemid);
		?>
		<form action="<?php echo $target;?>" method="post" name="adminForm" enctype="multipart/form-data" onsubmit="return submitbutton(this)">
		<?php
		echo "<input type='hidden' name='category' value='$this->catid' />";
	  }
	  else
	  {
		?>
		<form action="<?php echo $target;?>" method="post" name="adminForm" enctype="multipart/form-data" onsubmit="return submitbutton(this)">
		<?php
		if (!isset($this->content->catsid))
			$this->content->catsid = 0;
		$this->displayMultipleCatsChooser($this->content->catsid,$this->cats,$this->conf,"com_adsmanager",$this->Itemid);
	  }
	?>

Postoji singlecatchooser i multiplecatschooser. Single je kada oglas može samo u jednu kategoriju, dok je multiple za više. Neka te multiple ne brine jer njega niti ne koristim, već samo single.

Za prikaz singlecatchooser, pronašao sam ovaj kod u drugom fajlu:

function displaySingleCatChooser($ad_id,$conf,$option,$cats,$catid,$itemid)
	{
		
		if (($ad_id != "")&&
			  file_exists( JPATH_BASE . "/components/com_paidsystem/api.paidsystem.php"))
		{
			$display_current_cat_only = 1;
			$this->selectCategories(0,"",$cats,$catid,$conf->root_allowed,""/*$link*/,$display_current_cat_only); 
		}
		else
		{
		?>
			<script language="JavaScript" type="text/JavaScript">
			<!--
			function jumpmenu(target,obj,restore){
			  eval(target+".location='"+obj.options[obj.selectedIndex].value+"'");	
			  obj.options[obj.selectedIndex].innerHTML="<?php echo JText::_('ADSMANAGER_WAIT');?>";	
			}		
			//-->
			</script>
			<select class='adsmanager_required' name='category_choose' onchange="jumpmenu('parent',this)">
			<?php
				
			 if ((@$ad_id)&&($ad_id != ""))
				$link = "index.php?option=com_adsmanager&Itemid=$itemid&task=write&id=$ad_id";
			 else
				$link = "index.php?option=com_adsmanager&Itemid=$itemid&task=write";
			 if ($catid == 0)
				echo "<option value='#' selected=selected>".JText::_('ADSMANAGER_SELECT_CATEGORY')."</option>";		
			 if (function_exists("selectPaidCategories"))
				selectPaidCategories(0,"",$cats,$catid,$conf->root_allowed,$link,0); 
			else
				$this->selectCategories(0,"",$cats,$catid,$conf->root_allowed,$link,0); 
			?>
			</select>
		<?php
		}
	}

U gornjoj funkciji se spominje selectCategories koji se dobiva pomoću:

function selectCategories($id, $level, $children,&$catid,$root_allowed,$link,$current_cat_only =0) {
		if (@$children[$id]) {
			foreach ($children[$id] as $row) {
				if (($root_allowed == 1)||(!@$children[$row->id])) {
					if ($current_cat_only == 0)
					{?>
					
					
					
					
					<?php 
					
					if ($level == "") { ?>

					<option style="background-color: #bf1111; color: #fff;" value="<?php echo JRoute::_("$link&catid=".$row->id); ?>" disabled="disabled" <?php if ($row->id == $catid) { echo "selected='selected'"; } ?>> <?php echo "--- ". $row->name." ---"; ?></option>

				<?php } else { ?>

					<option value="<?php echo JRoute::_("$link&catid=".$row->id); ?>" <?php if ($row->id == $catid) { echo "selected='selected'"; } ?>><?php echo $row->id; (dio koji je odgovoran za prikaz id-jeva kategorija u dropdown izborniku kategorija) ?></option>

				<?php }  ?>
					
					<?php 
					}
					else if ($row->id == $catid)
					{
						echo $level.$row->name;
					}
				}
				$this->selectCategories($row->id, $level.$row->name." -> ", $children,$catid,$root_allowed,$link,$current_cat_only);
			}
		}
	}

Dok se navedeni $row->id spominje još i ovdje…

function displayCatsList($id, $level, $cats,$root_allowed) {
		if (@$cats[$id]) {
			foreach ($cats[$id] as $row) {
				if (($root_allowed == 1)||(!@$cats[$row->id])) {
					?>
					<option value="<?php echo $row->id; ?>">
					<?php echo $level.$row->name; ?>
					</option>
					<?php 
				}
				$this->displayCatsList($row->id, $level.$row->name." >> ", $cats,$root_allowed);
			}
		}
	}
	
	function displaySelectedCatsList($id, $level,$selectedcats, $cats,$root_allowed) {
		if (@$cats[$id]) {
			foreach ($cats[$id] as $row) {
				if (($root_allowed == 1)||(!@$cats[$row->id])) {
					if ((is_array($selectedcats))&&(in_array($row->id,$selectedcats))) {
					?>
					<option value="<?php echo $row->id; ?>">
					<?php echo $level.$row->name; ?>
					</option>
					<?php 
					}
				}
				$this->displaySelectedCatsList($row->id, $level.$row->name." >> ",$selectedcats,$cats,$root_allowed);
			}
		}
	}

i ovdje…

function selectSingleCategory($id, $level, $children,&$catid,$root_allowed,$link,$current_cat_only =0) {
		if (@$children[$id]) {
			foreach ($children[$id] as $row) {
				if (($root_allowed == 1)||(!@$children[$row->id])) {
					?>
					<option value="<?php echo "$link&catid=".$row->id; ?>" <?php if ($row->id == $catid) { echo "selected='selected'"; } ?>>
					<?php echo $level.$row->name; ?>
					</option>
					<?php 
				}
				$this->selectSingleCategory($row->id, $level.$row->name." >> ", $children,$catid,$root_allowed,$link,$current_cat_only);
			}
		}
	}
	
	function selectCategories($id, $level, $children,$catid,$nodisplaycatid,$multiple=0,$catsid="") {
		if (@$children[$id]) {
			foreach ($children[$id] as $row) {
				if ($row->id != $nodisplaycatid) {
					if ((($multiple == 0)&&($row->id != $catid))
					    ||
					    (($multiple == 1)&&(strpos($catsid, ",$row->id,") === false)))
						echo "<option value='".$row->id."'>".$level.$row->name."</option>";
					else
						echo "<option value='".$row->id."' selected>".$level.$row->name."</option>";
					
					$this->selectCategories($row->id, $level.$row->name." >> ", $children,$catid,$nodisplaycatid,$multiple,$catsid);
				}
			}
		}
	}

Znam da sam sve sada nabacao i pol toga se ne kuži, ali drugačije nažalost neznam.

Jednostavnu stvar želim napraviti, a neznam kako.

Ne postoji li neki jednostavan način za rješenje mog problema tako da se koristi $row->id jer se pomoću njega i dobiva taj id?

Puno hvala još jednom!

$row je samo varijabla unutar foreacha( foreach ($children[$id] as $row) ), ne uzima on iz klase id…

sad ulaziti u to kako sta radi u toj skripti je previse samo gledajuci ovaj kod…

vidim da je to za joomlu skripta( JROUTE:: ), a s klasama joomle nisam upoznat, niti imam sad vremena proucavati kako dobiti kategoriju… pa niti u kodu…

mozda je ipak netko upoznat ovdje s tim pa ti pomogne…

Da, iz joomle je… da, kako je tek meni ulaziti u skriptu i sve gledati… a fajlova kao u priči…

Radi se o komponenti Adsmanager…

Nema veze, hvala na trudu svejedno… :wink:


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja