Autor Zpráva
bramburka
Profil *
ahoj
prosim vás potřeboval bych poradit, potřebuju abych do
$anz = mysql_num_rows(safe_query("SELECT pollID FROM `".PREFIX."poll` WHERE pollID='".$ds['pollID']."' AND hosts LIKE '%".$_SERVER['REMOTE_ADDR']."%' AND intern<=".isclanmember($userID).""));


dostal i

safe_query("UPDATE `".PREFIX."user` SET points=points+10 WHERE userID=$userID");


už jsem zkoušel mnoho možností...ale pořad nic :(, zkoušel jsem i hledat tady na Diskuzi a nic jsem nenašel..
Alphard
Profil
bramburka:
Jak chcete kombinovat select a update? Takhle (dva dotazy za sebou) je to funkční, nebo ne?

a u prvního dotazu bude lepší
$anz = mysql_result (safe_query (" select count(*) from ..."), 0, 0);
bramburka
Profil *
ne :(
Alphard
Profil
bramburka:
ne :(
Není nad jasný popis chyby.
Co to dělá nebo nedělá a má dělat? Co píše mysql_error()?
bramburka
Profil *
Když to dám takhle

$anz = mysql_num_rows(safe_query("SELECT pollID FROM `".PREFIX."poll` WHERE pollID='".$ds['pollID']."' AND hosts LIKE '%".$_SERVER['REMOTE_ADDR']."%' AND intern<=".isclanmember($userID).""));
safe_query("UPDATE `".PREFIX."user` SET points=points+10 WHERE userID=$userID");


tak mi to přidá bod při každém pohybu na webu...
Alphard
Profil
To je právně :-) Za jakých podmínek se má dotaz provést?
if (neco)
  safe_query();
bramburka
Profil *
Jen když budu hlasovat v anketě.
Alphard
Profil
bramburka:
Takhle se nikam nedostaneme. Tohle není chat.
Když zpracovávate hlasování, tak máte podmínkový blok/metodu/funkci, která se provede právě ve chvíli přidání hlasu, tak tam přidejte tento dotaz. Jestli stav poznáte podle nějaké proměnné, tak do dejte do podmínky a vložte kamkoliv.
bramburka
Profil *
Omlouvám se

celý kod je zde

$_language->read_module('polls');

function vote($poll) {
	global $userID, $_language;
	$pagebg=PAGEBG;
	$border=BORDER;
	$bghead=BGHEAD;
	$bgcat=BGCAT;

	if($poll) $lastpoll = safe_query("SELECT * FROM ".PREFIX."poll WHERE aktiv='1' AND laufzeit>".time()." AND intern<=".isclanmember($userID)." and pollID='".$poll."' LIMIT 0,1");
	else {
		$num = mysql_num_rows(safe_query("SELECT * FROM ".PREFIX."poll WHERE aktiv='1' AND laufzeit>".time()." AND intern<=".isclanmember($userID).""));
		if($num) {
			$start = rand(0,($num-1));
			$lastpoll = safe_query("SELECT * FROM ".PREFIX."poll WHERE aktiv='1' AND laufzeit>".time()." AND intern<=".isclanmember($userID)." ORDER BY pollID DESC LIMIT ".$start.",".($start+1)."");
		}
		else {
			echo $_language->module['no_active_poll'].'<br /><br />• <a href="index.php?site=polls">'.$_language->module['show_polls'].'</a>';
			return true;
		}
	}

	$anz = mysql_num_rows($lastpoll);
	$ds = mysql_fetch_array($lastpoll);
	if($anz) {

		$anz = mysql_num_rows(safe_query("SELECT pollID FROM `".PREFIX."poll` WHERE pollID='".$ds['pollID']."' AND hosts LIKE '%".$_SERVER['REMOTE_ADDR']."%' AND intern<=".isclanmember($userID).""));

		$anz_user = false;
		if($userID) {
			$user_ids = explode(";", $ds['userIDs']);
			if(in_array($userID, $user_ids)) $anz_user = true;
		}
		$cookie = false;
		if(isset($_COOKIE['poll'])) if($_COOKIE['poll'] == $ds['pollID']) $cookie = true;
		
		if($cookie or $anz or $anz_user) {

			if($ds['intern'] == 1) $isintern = '('.$_language->module['intern'].')';
      		else $isintern = '';
      	
      		$title = $ds['titel'];      

			for ($n = 1; $n <= 10; $n++) {
				if($ds['o'.$n]) $options[] = clearfromtags($ds['o'.$n]);
			}

			$votes = safe_query("SELECT * FROM ".PREFIX."poll_votes WHERE pollID='".$ds['pollID']."'");


			$dv = mysql_fetch_array($votes);
			$gesamtstimmen = $dv['o1'] + $dv['o2'] + $dv['o3'] + $dv['o4'] + $dv['o5'] + $dv['o6'] + $dv['o7'] + $dv['o8'] + $dv['o9'] + $dv['o10'];
			
			eval("\$poll_voted_head = \"".gettemplate("poll_voted_head")."\";");
			echo $poll_voted_head;
			$n=1;
			$bg = BG_2;
			foreach ($options as $option) {
				$stimmen = $dv['o'.$n];
				if ($gesamtstimmen) {
					$perc = $stimmen / $gesamtstimmen * 10000;
					settype($perc, "integer");
					$perc = $perc/50;
				}
				else $perc = 0;
				$picwidth = $perc;
				settype($picwidth, "integer");
				eval("\$poll_voted_content = \"".gettemplate("poll_voted_content")."\";");
				echo $poll_voted_content;
				$n++;
			}

			$anzcomments = getanzcomments($ds['pollID'], 'po');
			$comments='<a href="index.php?site=polls&amp;pollID='.$ds['pollID'].'">['.$anzcomments.'] '.$_language->module['comments'].'</a>';
			
			eval("\$poll_voted_foot = \"".gettemplate("poll_voted_foot")."\";");
			echo $poll_voted_foot;
			
			unset($options);
		}
		else {
	
		
      		if($ds['intern'] == 1) $isintern = '('.$_language->module['intern'].')';
      		else $isintern = '';
      		$title = $ds['titel'];
      
      		eval("\$poll_head = \"".gettemplate("poll_head")."\";");
			echo $poll_head;
			
			for ($n=1; $n<=10; $n++) {
				if($ds['o'.$n]) $options[]=$ds['o'.$n];
			}
			$n=1;
			foreach ($options as $option) {
				$option=$option;
				eval("\$poll_content = \"".gettemplate("poll_content")."\";");
				echo $poll_content;
				$n++;
			}
			$pollID = $ds['pollID'];
			eval("\$poll_foot = \"".gettemplate("poll_foot")."\";");
			echo $poll_foot;
		}
	}
	else{
		echo $_language->module['no_active_poll'].'<br /><br />• <a href="index.php?site=polls">'.$_language->module['show_polls'].'</a>';
	}
}

if(!isset($pollID)) $pollID = '';
vote($pollID);
?>
Alphard
Profil
$pollID je nějaké id hlasu v anktetě?
Jesli ano, tak bych to na první hodled přidal do větve if($poll). Ale není moc snadné se v té funkci vyznat (zvlášť když jsem tam nenašel insert ani update, tak nevím, jak ty hlasy zapisujete).
bramburka
Profil *
$pollID je ID ankety.
bramburka
Profil *
A hlasy v anketě jsou v jednom připadě o1 a v druhym je to otazka je to otázka
bramburka
Profil *
*01 02 03 04 05 06 07....

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: