Forum Replies Created

Viewing 15 replies - 16 through 30 (of 33 total)
  • Thread Starter Joepiooo

    (@joepiooo)

    Hi Antoine,

    The data is stored in wp_usermeta.

    How can I acces this wp_usermeta in the ranking class?

    Just to let you know.

    Webmastertools is now only showing:

    145 URL’s send

    Not even showing a field of Indexed URL’s

    Just letting you know the progress:)

    Ok thanks for the fast response:)

    I will wait for the next update. And I love you plugin btw:D

    Hi,

    I just updated to 4.0.2 and now I have 0 send and 144 indexed… The oposite of what tvanhemert had.

    More people got this issue?

    Thread Starter Joepiooo

    (@joepiooo)

    Very nice!

    If I copy the shortcode form your class-football-pool-shortcodes.php en past it into mine… Is that enough or is there more coding in different files?

    I cant update your plugin because I changed to much and not in a child theme… ??

    My mistake… So I have to edit it myself

    Thanks:)

    Thread Starter Joepiooo

    (@joepiooo)

    Hello,

    Did you manage to create the current user position allready? I tried it myselve but no luck so far… Would be a great add-on:)

    Thanks

    Best regards

    Thread Starter Joepiooo

    (@joepiooo)

    Ok I see…

    I′m using a script from DataTables.net to get ranking. It is a very nice Jquery tool with pagination, search, and select options.

    I got it working with pool_wp_scorehistory table but the output for username is the user_id from pool_wp_scorehistory and I want it to be the display_name from wp_users…

    How can I do that wihtin this script:

    <?php
    	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
    	 * Easy set variables
    	 */
    
    	/* Array of database columns which should be read and sent back to DataTables. Use a space where
    	 * you want to insert a non-database field (for example a counter or static image)
    	 */
    	$aColumns = array( 'ranking', 'user_id', 'total_score' );
    
    	/* Indexed column (used for fast and accurate table cardinality) */
    	$sIndexColumn = "type";
    
    	/* DB table to use */
    	$sTable = "pool_wp_scorehistory";
    
    	/* Database connection information */
    	$gaSql['user']       = "username";
    	$gaSql['password']   = "password";
    	$gaSql['db']         = "database-name";
    	$gaSql['server']     = "localhost";
    
    	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
    	 * If you just want to use the basic configuration for DataTables with PHP server-side, there is
    	 * no need to edit below this line
    	 */
    
    	/*
    	 * MySQL connection
    	 */
    	$gaSql['link'] =  mysql_pconnect( $gaSql['server'], $gaSql['user'], $gaSql['password']  ) or
    		die( 'Could not open connection to server' );
    
    	mysql_select_db( $gaSql['db'], $gaSql['link'] ) or
    		die( 'Could not select database '. $gaSql['db'] );
    
    	/*
    	 * Paging
    	 */
    	$sLimit = "";
    	if ( isset( $_GET['iDisplayStart'] ) && $_GET['iDisplayLength'] != '-1' )
    	{
    		$sLimit = "LIMIT ".intval( $_GET['iDisplayStart'] ).", ".
    			intval( $_GET['iDisplayLength'] );
    	}
    
    	/*
    	 * Ordering
    	 */
    	$sOrder = "";
    	if ( isset( $_GET['iSortCol_0'] ) )
    	{
    		$sOrder = "ORDER BY  ";
    		for ( $i=0 ; $i<intval( $_GET['iSortingCols'] ) ; $i++ )
    		{
    			if ( $_GET[ 'bSortable_'.intval($_GET['iSortCol_'.$i]) ] == "true" )
    			{
    				$sOrder .= "<code>&quot;.$aColumns[ intval( $_GET['iSortCol_'.$i] ) ].&quot;</code> ".
    					($_GET['sSortDir_'.$i]==='asc' ? 'asc' : 'desc') .", ";
    			}
    		}
    
    		$sOrder = substr_replace( $sOrder, "", -2 );
    		if ( $sOrder == "ORDER BY" )
    		{
    			$sOrder = "";
    		}
    	}
    
    	/*
    	 * Filtering
    	 * NOTE this does not match the built-in DataTables filtering which does it
    	 * word by word on any field. It's possible to do here, but concerned about efficiency
    	 * on very large tables, and MySQL's regex functionality is very limited
    	 */
    	$sWhere = "";
    	if ( isset($_GET['sSearch']) && $_GET['sSearch'] != "" )
    	{
    		$sWhere = "WHERE (";
    		for ( $i=0 ; $i<count($aColumns) ; $i++ )
    		{
    			$sWhere .= "<code>&quot;.$aColumns[$i].&quot;</code> LIKE '%".mysql_real_escape_string( $_GET['sSearch'] )."%' OR ";
    		}
    		$sWhere = substr_replace( $sWhere, "", -3 );
    		$sWhere .= ')';
    	}
    
    	/* Individual column filtering */
    	for ( $i=0 ; $i<count($aColumns) ; $i++ )
    	{
    		if ( isset($_GET['bSearchable_'.$i]) && $_GET['bSearchable_'.$i] == "true" && $_GET['sSearch_'.$i] != '' )
    		{
    			if ( $sWhere == "" )
    			{
    				$sWhere = "WHERE ";
    			}
    			else
    			{
    				$sWhere .= " AND ";
    			}
    			$sWhere .= "<code>&quot;.$aColumns[$i].&quot;</code> LIKE '%".mysql_real_escape_string($_GET['sSearch_'.$i])."%' ";
    		}
    	}
    
    	/*
    	 * SQL queries
    	 * Get data to display
    	 */
    	$sQuery = "
    		SELECT SQL_CALC_FOUND_ROWS <code>&quot;.str_replace(&quot; , &quot;, &quot; &quot;, implode(&quot;</code>, <code>&quot;, $aColumns)).&quot;</code>
    		FROM   $sTable
    		$sWhere
    		GROUP BY ranking
    		$sOrder
    		$sLimit
    		";
    	$rResult = mysql_query( $sQuery, $gaSql['link'] ) or die(mysql_error());
    
    	/* Data set length after filtering */
    	$sQuery = "
    		SELECT FOUND_ROWS()
    	";
    	$rResultFilterTotal = mysql_query( $sQuery, $gaSql['link'] ) or die(mysql_error());
    	$aResultFilterTotal = mysql_fetch_array($rResultFilterTotal);
    	$iFilteredTotal = $aResultFilterTotal[0];
    
    	/* Total data set length */
    	$sQuery = "
    		SELECT COUNT(<code>&quot;.$sIndexColumn.&quot;</code>)
    		FROM   $sTable
    	";
    	$rResultTotal = mysql_query( $sQuery, $gaSql['link'] ) or die(mysql_error());
    	$aResultTotal = mysql_fetch_array($rResultTotal);
    	$iTotal = $aResultTotal[0];
    
    	/*
    	 * Output
    	 */
    	$output = array(
    		"sEcho" => intval($_GET['sEcho']),
    		"iTotalRecords" => $iTotal,
    		"iTotalDisplayRecords" => $iFilteredTotal,
    		"aaData" => array()
    	);
    
    	while ( $aRow = mysql_fetch_array( $rResult ) )
    	{
    		$row = array();
    		for ( $i=0 ; $i<count($aColumns) ; $i++ )
    		{
    			if ( $aColumns[$i] == "version" )
    			{
    				/* Special output formatting for 'version' column */
    				$row[] = ($aRow[ $aColumns[$i] ]=="0") ? '-' : $aRow[ $aColumns[$i] ];
    			}
    			else if ( $aColumns[$i] != ' ' )
    			{
    				/* General output */
    				$row[] = $aRow[ $aColumns[$i] ];
    			}
    		}
    		$output['aaData'][] = $row;
    	}
    
    	echo json_encode( $output );
    ?>

    Thanks:)

    Thread Starter Joepiooo

    (@joepiooo)

    Ok I see…

    I′m using a script from DataTables.net to get ranking. It is a very nice Jquery tool with pagination, search, and select options.

    I got it working with pool_wp_scorehistory table but the output for username is the user_id from pool_wp_scorehistory and I want it to be the display_name from wp_users…

    How can I do that wihtin this script:

    <?php
    	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
    	 * Easy set variables
    	 */
    
    	/* Array of database columns which should be read and sent back to DataTables. Use a space where
    	 * you want to insert a non-database field (for example a counter or static image)
    	 */
    	$aColumns = array( 'ranking', 'user_id', 'total_score' );
    
    	/* Indexed column (used for fast and accurate table cardinality) */
    	$sIndexColumn = "type";
    
    	/* DB table to use */
    	$sTable = "pool_wp_scorehistory";
    
    	/* Database connection information */
    	$gaSql['user']       = "username";
    	$gaSql['password']   = "password";
    	$gaSql['db']         = "database-name";
    	$gaSql['server']     = "localhost";
    
    	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
    	 * If you just want to use the basic configuration for DataTables with PHP server-side, there is
    	 * no need to edit below this line
    	 */
    
    	/*
    	 * MySQL connection
    	 */
    	$gaSql['link'] =  mysql_pconnect( $gaSql['server'], $gaSql['user'], $gaSql['password']  ) or
    		die( 'Could not open connection to server' );
    
    	mysql_select_db( $gaSql['db'], $gaSql['link'] ) or
    		die( 'Could not select database '. $gaSql['db'] );
    
    	/*
    	 * Paging
    	 */
    	$sLimit = "";
    	if ( isset( $_GET['iDisplayStart'] ) && $_GET['iDisplayLength'] != '-1' )
    	{
    		$sLimit = "LIMIT ".intval( $_GET['iDisplayStart'] ).", ".
    			intval( $_GET['iDisplayLength'] );
    	}
    
    	/*
    	 * Ordering
    	 */
    	$sOrder = "";
    	if ( isset( $_GET['iSortCol_0'] ) )
    	{
    		$sOrder = "ORDER BY  ";
    		for ( $i=0 ; $i<intval( $_GET['iSortingCols'] ) ; $i++ )
    		{
    			if ( $_GET[ 'bSortable_'.intval($_GET['iSortCol_'.$i]) ] == "true" )
    			{
    				$sOrder .= "<code>&quot;.$aColumns[ intval( $_GET['iSortCol_'.$i] ) ].&quot;</code> ".
    					($_GET['sSortDir_'.$i]==='asc' ? 'asc' : 'desc') .", ";
    			}
    		}
    
    		$sOrder = substr_replace( $sOrder, "", -2 );
    		if ( $sOrder == "ORDER BY" )
    		{
    			$sOrder = "";
    		}
    	}
    
    	/*
    	 * Filtering
    	 * NOTE this does not match the built-in DataTables filtering which does it
    	 * word by word on any field. It's possible to do here, but concerned about efficiency
    	 * on very large tables, and MySQL's regex functionality is very limited
    	 */
    	$sWhere = "";
    	if ( isset($_GET['sSearch']) && $_GET['sSearch'] != "" )
    	{
    		$sWhere = "WHERE (";
    		for ( $i=0 ; $i<count($aColumns) ; $i++ )
    		{
    			$sWhere .= "<code>&quot;.$aColumns[$i].&quot;</code> LIKE '%".mysql_real_escape_string( $_GET['sSearch'] )."%' OR ";
    		}
    		$sWhere = substr_replace( $sWhere, "", -3 );
    		$sWhere .= ')';
    	}
    
    	/* Individual column filtering */
    	for ( $i=0 ; $i<count($aColumns) ; $i++ )
    	{
    		if ( isset($_GET['bSearchable_'.$i]) && $_GET['bSearchable_'.$i] == "true" && $_GET['sSearch_'.$i] != '' )
    		{
    			if ( $sWhere == "" )
    			{
    				$sWhere = "WHERE ";
    			}
    			else
    			{
    				$sWhere .= " AND ";
    			}
    			$sWhere .= "<code>&quot;.$aColumns[$i].&quot;</code> LIKE '%".mysql_real_escape_string($_GET['sSearch_'.$i])."%' ";
    		}
    	}
    
    	/*
    	 * SQL queries
    	 * Get data to display
    	 */
    	$sQuery = "
    		SELECT SQL_CALC_FOUND_ROWS <code>&quot;.str_replace(&quot; , &quot;, &quot; &quot;, implode(&quot;</code>, <code>&quot;, $aColumns)).&quot;</code>
    		FROM   $sTable
    		$sWhere
    		GROUP BY ranking
    		$sOrder
    		$sLimit
    		";
    	$rResult = mysql_query( $sQuery, $gaSql['link'] ) or die(mysql_error());
    
    	/* Data set length after filtering */
    	$sQuery = "
    		SELECT FOUND_ROWS()
    	";
    	$rResultFilterTotal = mysql_query( $sQuery, $gaSql['link'] ) or die(mysql_error());
    	$aResultFilterTotal = mysql_fetch_array($rResultFilterTotal);
    	$iFilteredTotal = $aResultFilterTotal[0];
    
    	/* Total data set length */
    	$sQuery = "
    		SELECT COUNT(<code>&quot;.$sIndexColumn.&quot;</code>)
    		FROM   $sTable
    	";
    	$rResultTotal = mysql_query( $sQuery, $gaSql['link'] ) or die(mysql_error());
    	$aResultTotal = mysql_fetch_array($rResultTotal);
    	$iTotal = $aResultTotal[0];
    
    	/*
    	 * Output
    	 */
    	$output = array(
    		"sEcho" => intval($_GET['sEcho']),
    		"iTotalRecords" => $iTotal,
    		"iTotalDisplayRecords" => $iFilteredTotal,
    		"aaData" => array()
    	);
    
    	while ( $aRow = mysql_fetch_array( $rResult ) )
    	{
    		$row = array();
    		for ( $i=0 ; $i<count($aColumns) ; $i++ )
    		{
    			if ( $aColumns[$i] == "version" )
    			{
    				/* Special output formatting for 'version' column */
    				$row[] = ($aRow[ $aColumns[$i] ]=="0") ? '-' : $aRow[ $aColumns[$i] ];
    			}
    			else if ( $aColumns[$i] != ' ' )
    			{
    				/* General output */
    				$row[] = $aRow[ $aColumns[$i] ];
    			}
    		}
    		$output['aaData'][] = $row;
    	}
    
    	echo json_encode( $output );
    ?>

    Thanks:)

    @spinrag

    If you manage to make this work please share:)

    I really want to paginate the ranking page but no luck so far..

    Thread Starter Joepiooo

    (@joepiooo)

    Ok very nice!:)

    When can we expect the next version? Or is it hard to say how long it is gonna take?

    Thread Starter Joepiooo

    (@joepiooo)

    Hi AntoineH

    Thanks for your reply. Pagination would be very usefull in the ranking system. When you have a lot of users you get a huge list en the load time is longer than a list of maximum 50 or something.

    I allready noticed the pagination class but to be honest my php knowledge is unfortunately to weak. I also searched on google for some handy plugins but I cant make this pagination on my own.

    I’m almost afraid to ask but can you help me with this?:)

    Thread Starter Joepiooo

    (@joepiooo)

    Hi Antoine,

    Thanks for the fast reply! The version you just provided is that a lot different from the version you can download directly from the plugin page?

    I’ll try the part of code you provided above:) Will let you know if I got it working. I know this is a question you probably cant answer but how long it took you to calculate a new score with 1000 users?

    And is it possible to add pagination to the ranking page? So you always show the top 20 and you can navigate furder and furder with pagination. Because a list of 2000 users is a bit long;)

    Sorry for all those questions and dont get me wrong because I really like your plugin.

    Regards

    Joep

    Thread Starter Joepiooo

    (@joepiooo)

    Haha;)

    Thank you very much! That would be great! Can’t wait untill the next version!:D

    Thread Starter Joepiooo

    (@joepiooo)

    Hello,

    Thanks for the reply:)

    No I like the big Quotes at the beginning.. I want to same thing at the end… Is this easy to do?

    Ok I understand:) I will update the plugin when it is fixed:)

    Thanks in advance

    @foxytechnology

    I know this question is a bit rude but how long do you think it takes to fix that “per/page review”?

    I really like this plugin… It is very easy to use and to customize so I can’t wait to use it on my website:)

Viewing 15 replies - 16 through 30 (of 33 total)