RE: [PHP] Re: shuffle
yep, that causes nothing to be returned. -Original Message- From: Torsten Roehr [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 14, 2004 2:20 PM To: [EMAIL PROTECTED] Subject: [PHP] Re: shuffle Edward Peloke [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] I am using a db class which has the following method for cycling through the records function nextRecord(){ $this-[EMAIL PROTECTED]($this-queryID); $status=is_array($this-Record); Hi Edward, first you are using $this-record and then $this-Record (r / R)? Have you tried adding this line?: shuffle($this-record); return ($status); } where queryID is set by running the query. It works fine and I can run it as follows $sql-query(select * from clients); while ($sql-nextRecord()){ echo $sql-getField(name);} Problem is, I want to have the array shuffled so the rows are randomly displayed each time the user hits the page. I have tried shuffle around the @mysql_fetch_array call and $this-queryID but nothing seems to work...any ideas? Thanks, Eddie Regards, Torsten Roehr -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Shuffle Cards Function
I could be wrong in thinking this, but wasn't the purpose of the presented function to shuffle a deck in a deliberately imperfecatly random way? ie. mimicking a human shuffler beats why one would want to do this as an academic excersize, but hey, I like it ;-) - Original Message - From: Richard Lynch [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Sunday, August 19, 2001 9:45 PM Subject: [PHP] Re: Shuffle Cards Function http://php.net/shuffle will be much faster and just as random... -- WARNING [EMAIL PROTECTED] address is an endangered species -- Use [EMAIL PROTECTED] Wanna help me out? Like Music? Buy a CD: http://l-i-e.com/artists.htm Volunteer a little time: http://chatmusic.com/volunteer.htm - Original Message - From: Robert Schultz [EMAIL PROTECTED] Newsgroups: php.general To: [EMAIL PROTECTED] Sent: Saturday, August 18, 2001 11:37 PM Subject: Shuffle Cards Function I've written a ShuffleCards function that will actually shuffle a deck of cards just like would happen in real life (divide the deck in half and stick them into each other with 1-3 cards between each other card) function ShuffleCards($cardsArray, $times) { // Randomizes where to split within center (-3 to +3 from dead center) (MINIMUM 10 CARDS IN DECK) // Splits into two array. Randomizes how many cards from left and how many cards from right (between 1 and 3) // Alternates sides. Continues until both arrays are empty. $arraySize = count($cardsArray); if($arraySize10) return; $deadCenter = $arraySize/2; for($i=0;$i$times;$i++) { reset($cardsArray); $cutVariant = rand(-3, 3); $cutLocation = $deadCenter+$cutVariant; $firstArray = array(); $secondArray = array(); for($z=0;$z$arraySize;$z++) { if($z$cutLocation) array_push($firstArray, $cardsArray[$z]); else array_push($secondArray, $cardsArray[$z]); } $bottomFirst = rand(0, 1); $cardsArray = array(); while(count($firstArray) count($secondArray)) { $leftNewCards = array(); $rightNewCards = array(); $leftVariant = rand(1, 3); if($leftVariantcount($firstArray)) $leftVariant = count($firstArray); $rightVariant = rand(1, 3); if($rightVariantcount($secondArray)) $rightVariant = count($secondArray); for($x=0;$x$leftVariant;$x++) { array_push($leftNewCards, array_shift($firstArray)); } for($y=0;$y$rightVariant;$y++) { array_push($rightNewCards, array_shift($secondArray)); } if($bottomFirst==0) { $newCardsArray = array_merge($leftNewCards, $rightNewCards); $bottomFirst = 1; } else { $newCardsArray = array_merge($rightNewCards, $leftNewCards); $bottomFirst = 0; } reset($newCardsArray); while(count($newCardsArray)) { array_push($cardsArray, array_shift($newCardsArray)); } } if(count($firstArray)) { while(count($firstArray)) array_push($cardsArray, array_shift($firstArray)); } if(count($secondArray)) { while(count($secondArray)) array_push($cardsArray, array_shift($secondArray)); } } } Robert Schultz - [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] Re: Shuffle Cards Function
Well, I required a function to mimick a human shuffle. Because the online shuffle was to help the user predict what sort/types of deals he would get with a given deck based upon a normal human shuffle. Plus, I've heard some bad things about shuffle, and of course, shuffe doesn't mimick a non-perfect human shuffle. Robert Schultz - [EMAIL PROTECTED] - Original Message - From: Tom Carter [EMAIL PROTECTED] To: Richard Lynch [EMAIL PROTECTED]; [EMAIL PROTECTED] Sent: Sunday, August 19, 2001 7:00 PM Subject: Re: [PHP] Re: Shuffle Cards Function I could be wrong in thinking this, but wasn't the purpose of the presented function to shuffle a deck in a deliberately imperfecatly random way? ie. mimicking a human shuffler beats why one would want to do this as an academic excersize, but hey, I like it ;-) - Original Message - From: Richard Lynch [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Sunday, August 19, 2001 9:45 PM Subject: [PHP] Re: Shuffle Cards Function http://php.net/shuffle will be much faster and just as random... -- WARNING [EMAIL PROTECTED] address is an endangered species -- Use [EMAIL PROTECTED] Wanna help me out? Like Music? Buy a CD: http://l-i-e.com/artists.htm Volunteer a little time: http://chatmusic.com/volunteer.htm - Original Message - From: Robert Schultz [EMAIL PROTECTED] Newsgroups: php.general To: [EMAIL PROTECTED] Sent: Saturday, August 18, 2001 11:37 PM Subject: Shuffle Cards Function I've written a ShuffleCards function that will actually shuffle a deck of cards just like would happen in real life (divide the deck in half and stick them into each other with 1-3 cards between each other card) function ShuffleCards($cardsArray, $times) { // Randomizes where to split within center (-3 to +3 from dead center) (MINIMUM 10 CARDS IN DECK) // Splits into two array. Randomizes how many cards from left and how many cards from right (between 1 and 3) // Alternates sides. Continues until both arrays are empty. $arraySize = count($cardsArray); if($arraySize10) return; $deadCenter = $arraySize/2; for($i=0;$i$times;$i++) { reset($cardsArray); $cutVariant = rand(-3, 3); $cutLocation = $deadCenter+$cutVariant; $firstArray = array(); $secondArray = array(); for($z=0;$z$arraySize;$z++) { if($z$cutLocation) array_push($firstArray, $cardsArray[$z]); else array_push($secondArray, $cardsArray[$z]); } $bottomFirst = rand(0, 1); $cardsArray = array(); while(count($firstArray) count($secondArray)) { $leftNewCards = array(); $rightNewCards = array(); $leftVariant = rand(1, 3); if($leftVariantcount($firstArray)) $leftVariant = count($firstArray); $rightVariant = rand(1, 3); if($rightVariantcount($secondArray)) $rightVariant = count($secondArray); for($x=0;$x$leftVariant;$x++) { array_push($leftNewCards, array_shift($firstArray)); } for($y=0;$y$rightVariant;$y++) { array_push($rightNewCards, array_shift($secondArray)); } if($bottomFirst==0) { $newCardsArray = array_merge($leftNewCards, $rightNewCards); $bottomFirst = 1; } else { $newCardsArray = array_merge($rightNewCards, $leftNewCards); $bottomFirst = 0; } reset($newCardsArray); while(count($newCardsArray)) { array_push($cardsArray, array_shift($newCardsArray)); } } if(count($firstArray)) { while(count($firstArray)) array_push($cardsArray, array_shift($firstArray)); } if(count($secondArray)) { while(count($secondArray)) array_push($cardsArray, array_shift($secondArray)); } } } Robert Schultz - [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]