Wedstrijden controleren (Opgelost) 		
			
		
		 		
				
		
                        
                 
            
            
				
                
                    roelh (laatste wijziging 09/05/2012 11:40)                       
             
             
                        
                PHP gevorderde 
				
				Hallo allemaal,
    
    
        
            
                $uitslag1 = 3;
$uitslag2 = 2;
$voorspelling1 = 1;
$voorspelling2 = 0;
// if($arr['uitslagthuis'] < $arr['uitslaguit'])
if($uitslag1 < $voorspelling1 AND $uitslag2 < $voorspelling2):
	echo 'Ze hebben gewonnen, maar je hebt het niet goed voorspeld.';
	$punten = 3;
	
elseif ($uitslag1 == $voorspelling1 AND $uitslag2 == $voorspelling2):
	echo 'Je hebt het precies goed voorspelt!';
	$punten = 7;
	
	else:
	echo 'Je hebt het niet goed voorspeld';
	$punten = 0;
	
	echo $punten;
		endif;
?> 
             
            $uitslag1  =  3 ; 
$uitslag2  =  2 ; 
 
$voorspelling1  =  1 ; 
$voorspelling2  =  0 ; 
 
// if($arr['uitslagthuis'] < $arr['uitslaguit']) 
if ( $uitslag1  <  $voorspelling1  AND $uitslag2  <  $voorspelling2 ) : 
	echo 'Ze hebben gewonnen, maar je hebt het niet goed voorspeld.' ;  	$punten  =  3 ; 
 
elseif  ( $uitslag1  ==  $voorspelling1  AND $uitslag2  ==  $voorspelling2 ) : 
	echo 'Je hebt het precies goed voorspelt!' ;  	$punten  =  7 ; 
 
	else : 
	echo 'Je hebt het niet goed voorspeld' ;  	$punten  =  0 ; 
 
		endif ; 
 
 
 
?> 
 
         
     
  
              
        
		
				
		8 antwoorden 
                
                     
                
                    
		
		
	             
 
            
                    
                         
                    
                    
                        
                            Martijn (laatste wijziging 09/05/2012 11:57)                             
                         
                     
                    
                        Crew PHP users uitslagtabel 
    
    
        
            
                $query = mysql_query("SELECT * FROM uitslagtabel") or die(mysql_error());
$score1 = 3; // daadwerkelijke score van partij1
$score2 = 1; // daadwerkelijke score van partij2
while($fetch = mysql_fetch_assoc($query)){
  if($fetch['partij1'] == $score1 && $fetch['partij2'] == $score2){//precies goed
    $punten = 10;
  } 
  elseif(in_array($fetch['partij1'], range($score1-2,$score1+2) && in_array($fetch['partij2'], range($score2-2,$score2+2)){
    // nu mag je voor beide partijen er 2 hoger of lager naast zitten
    $punten = 7;
  } 
  elseif($fetch['partij1'] == $score1){ // nr1 goed
    $punten = 5;
  }
  elseif($fetch['partij2'] == $score2){// nr2 goed
    $punten = 5;
  } 
  else{ $punten = 0;}
  mysql_query("UPDATE users SET hun_score=hun_score+".$punten." WHERE id=".$fetch['uid']." LIMIT 1");
} 
             
            $score1  =  3 ;  // daadwerkelijke score van partij1 
$score2  =  1 ;  // daadwerkelijke score van partij2 
  if ( $fetch [ 'partij1' ]  ==  $score1  &&  $fetch [ 'partij2' ]  ==  $score2 ) { //precies goed 
    $punten  =  10 ; 
  }  
    // nu mag je voor beide partijen er 2 hoger of lager naast zitten 
    $punten  =  7 ; 
  }  
  elseif ( $fetch [ 'partij1' ]  ==  $score1 ) {  // nr1 goed 
    $punten  =  5 ; 
  } 
  elseif ( $fetch [ 'partij2' ]  ==  $score2 ) { // nr2 goed 
    $punten  =  5 ; 
  }  
  else {  $punten  =  0 ; } 
 
  mysql_query ( "UPDATE users SET hun_score=hun_score+" . $punten . " WHERE id=" . $fetch [ 'uid' ] . " LIMIT 1" ) ;  } 
 
         
     
   
                
                    
                         
                    
                    
                        
                            roelh                             
                         
                     
                    
                        PHP gevorderde Hmm dank je wel, eens kijken of ik hier wat mee kan. Ziet er ingewikkeld uit, maar ik ga het proberen 
                      
                
                    
                         
                    
                    
                        
                            Martijn (laatste wijziging 09/05/2012 11:58)                             
                         
                     
                    
                        Crew PHP t valt wel mee denk ik.
    
    
        
            
                
//in_array doet dit:
$array  = array(1,2,3,4,5);
echo in_array(1 , $array); // zal 1 (true) geven
echo in_array(8 , $array); // zal 0 (false) geven
//range doet dit:
$array  = array(1,2,3,4,5);
$array  = range(1,5); // zal exact hetzelfde geven 
             
            //in_array doet dit: 
$array   =  array ( 1 , 2 , 3 , 4 , 5 ) ;  
//range doet dit: 
$array   =  array ( 1 , 2 , 3 , 4 , 5 ) ; $array   =  range ( 1 , 5 ) ;  // zal exact hetzelfde geven  
         
     
  
                      
                
                    
                         
                    
                    
                        
                            roelh (laatste wijziging 09/05/2012 12:49)                             
                         
                     
                    
                        PHP gevorderde Ik heb  ondertsaande nu, maar het werkt niet, ik krijg foutmeldingen
    
    
        
            
                Notice: Undefined variable: 2 in F:\USBWebserver v8_nl\root\voetbal\users\controle.php on line 19
 
Notice: Undefined variable: 2 in F:\USBWebserver v8_nl\root\voetbal\users\controle.php on line 22
 
Notice: Undefined variable: 2 in F:\USBWebserver v8_nl\root\voetbal\users\controle.php on line  
             
            Notice:  Undefined variable:  2  in F: \USBWebserver v8_nl\root\voetbal\users\controle. php on line 19 
 
Notice:  Undefined variable:  2  in F: \USBWebserver v8_nl\root\voetbal\users\controle. php on line 22 
 
Notice:  Undefined variable:  2  in F: \USBWebserver v8_nl\root\voetbal\users\controle. php on line
 
         
     
 
    
    
        
            
                <?
mysql_connect($host,$user,$pass) or die(mysql_error());
mysql_select_db($db);
$query = mysql_query("SELECT * FROM speelschema where gespeeld = 1 AND gecontroleerd = 0") or die(mysql_error());
$useruitslag = mysql_query("SELECT * FROM voorspelling INNER JOIN users ON (voorspelling.userid = users.id)") or die(mysql_error());
 while($fetch = mysql_fetch_assoc($query)){
	 
	 	while($fetch1 = mysql_fetch_assoc($useruitslag)){
				
   if($fetch['thuisteam'] == $$fetch1['uitslagthuis'] && $fetch['uitteam'] == $$fetch1['uitslaguit']){//precies goed
     $punten = 10;
   } 
   elseif(in_array($fetch['thuisteam'], range($$fetch1['uitslagthuis']-2,$$fetch1['uitslagthuis']+2)) && in_array($fetch['uitteam'], range($$fetch1['uitslaguit']-2,$$fetch1['uitslaguit']+2))){
     // nu mag je voor beide partijen er 2 hoger of lager naast zitten
     $punten = 7;
   } 
   elseif($fetch['thuisteam'] == $$fetch1['uitslagthuis']){ // nr1 goed
     $punten = 5;
   }
   elseif($fetch['uitteam'] == $$fetch1['uitslaguit']){// nr2 goed
     $punten = 5;
   } 
   else{ $punten = 0;}
 
 mysql_query("UPDATE users SET punten=punten+".$punten." WHERE id=".$fetch['id']." LIMIT 1");
 }
 }
 echo 'Er is nik te controleren';
 
?> 
             
            <? 
 
 
 
$useruitslag  =  mysql_query ( "SELECT * FROM voorspelling INNER JOIN users ON (voorspelling.userid = users.id)" )  or 
die ( mysql_error ( ) ) ;  
 
 
   if ( $fetch [ 'thuisteam' ]  ==  $$fetch1 [ 'uitslagthuis' ]  &&  $fetch [ 'uitteam' ]  ==  $$fetch1 [ 'uitslaguit' ] ) { //precies goed 
     $punten  =  10 ; 
   }  
   elseif ( in_array ( $fetch [ 'thuisteam' ] ,  range ( $$fetch1 [ 'uitslagthuis' ] - 2 , $$fetch1 [ 'uitslagthuis' ] + 2 ) )  &&  in_array ( $fetch [ 'uitteam' ] ,  range ( $$fetch1 [ 'uitslaguit' ] - 2 , $$fetch1 [ 'uitslaguit' ] + 2 ) ) ) {       // nu mag je voor beide partijen er 2 hoger of lager naast zitten 
     $punten  =  7 ; 
   }  
   elseif ( $fetch [ 'thuisteam' ]  ==  $$fetch1 [ 'uitslagthuis' ] ) {  // nr1 goed 
     $punten  =  5 ; 
   } 
   elseif ( $fetch [ 'uitteam' ]  ==  $$fetch1 [ 'uitslaguit' ] ) { // nr2 goed 
     $punten  =  5 ; 
   }  
   else {  $punten  =  0 ; } 
 
 mysql_query ( "UPDATE users SET punten=punten+" . $punten . " WHERE id=" . $fetch [ 'id' ] . " LIMIT 1" ) ;   } 
 } 
 echo 'Er is nik te controleren' ;   
 
 
 
?> 
 
         
     
  
                      
                
                    
                         
                    
                    
                        
                            Martijn                             
                         
                     
                    
                        Crew PHP Ja, die twee waren een voorbeeld om te laten zien dat ze apart ook werken, je kunt dus combo's maken (1 in range, 1 precies goed en andersom, etc) 
                      
                
                    
                         
                    
                    
                        
                            roelh                             
                         
                     
                    
                        PHP gevorderde Geen idee wat ik fout doe. Maar hij geetf alleen punten aan 1 user, terwijl er meerdere in het systeem staan. Wat doe ik fout? Wie kan me helpen?
    
    
        
            
                
$query = mysql_query("SELECT * FROM speelschema") or die(mysql_error());
$useruitslag = mysql_query("SELECT * FROM voorspelling") or die(mysql_error());
 while($fetch = mysql_fetch_assoc($query)){
	 $fetch1 = mysql_fetch_assoc($useruitslag);
				
   if($fetch['thuisteam'] == $fetch1['uitslagthuis'] && $fetch['uitteam'] == $fetch1['uitslaguit']){//precies goed
     $punten = 10;
   } 
   elseif(in_array($fetch['thuisteam'], range($fetch1['uitslagthuis']-2, $fetch1['uitslagthuis']+2)) && in_array($fetch['uitteam'], range($fetch1['uitslaguit']-2, $fetch1['uitslaguit']+2))){
     // nu mag je voor beide partijen er 2 hoger of lager naast zitten
     $punten = 7;
   } 
   else{ $punten = 0;}
   
   echo $punten;
 
 mysql_query("UPDATE users SET punten=punten+".$punten." WHERE id=".$fetch1['id']."");
 }
 
?>
 
             
             
 
 
   if ( $fetch [ 'thuisteam' ]  ==  $fetch1 [ 'uitslagthuis' ]  &&  $fetch [ 'uitteam' ]  ==  $fetch1 [ 'uitslaguit' ] ) { //precies goed 
     $punten  =  10 ; 
   }  
   elseif ( in_array ( $fetch [ 'thuisteam' ] ,  range ( $fetch1 [ 'uitslagthuis' ] - 2 ,  $fetch1 [ 'uitslagthuis' ] + 2 ) )  &&  in_array ( $fetch [ 'uitteam' ] ,  range ( $fetch1 [ 'uitslaguit' ] - 2 ,  $fetch1 [ 'uitslaguit' ] + 2 ) ) ) {       // nu mag je voor beide partijen er 2 hoger of lager naast zitten 
     $punten  =  7 ; 
   }  
   else {  $punten  =  0 ; } 
 
 
 mysql_query ( "UPDATE users SET punten=punten+" . $punten . " WHERE id=" . $fetch1 [ 'id' ] . "" ) ;   
 } 
 
 
 
?> 
 
         
     
  
                      
                
                    
                         
                    
                    
                        
                            Martijn                             
                         
                     
                    
                        Crew PHP Moest even zoeken, maar t is een hele simpele alles .
    
    
        
            
                while($elke_wedstrijd_per_stuk){
   while($voorspellingen_voor_deze_wedstrijd_per_stuk){
      // kijk of $wedstrijd_per_stuk == $voorspelling_per_stuk
      // Update users waar id= $voorspelling_per_stuk['user'] 
   }
} 
             
            while ( $elke_wedstrijd_per_stuk ) { 
   while ( $voorspellingen_voor_deze_wedstrijd_per_stuk ) { 
      // kijk of $wedstrijd_per_stuk == $voorspelling_per_stuk 
 
      // Update users waar id= $voorspelling_per_stuk['user']  
   } 
} 
 
         
     
  
                      
                
                    
                         
                    
                    
                        
                            roelh (laatste wijziging 12/05/2012 12:10)                             
                         
                     
                    
                        PHP gevorderde Dit werkt, het enige wat nu niet wil is wanneer de wedstrijd correct voorspeld is hij geen 10 maar er 7 geeft...
    
    
        
            
                $query = mysql_query("SELECT thuisteam, uitteam FROM speelschema where gespeeld = 1 AND gecontroleerd = 0") or die(mysql_error());
$useruitslag = mysql_query("SELECT * FROM voorspelling") or die(mysql_error());
 while($fetch = mysql_fetch_assoc($query)){
		while($fetch1 = mysql_fetch_assoc($useruitslag)){
				
   if($fetch['thuisteam'] == $fetch1['uitslagthuis'] && $fetch['uitteam'] == $fetch1['uitslaguit']){//precies goed
     $punten = 10;
   } 
   elseif(in_array($fetch['thuisteam'], range($fetch1['uitslagthuis']-2, $fetch1['uitslagthuis']+2)) && in_array($fetch['uitteam'], range($fetch1['uitslaguit']-2, $fetch1['uitslaguit']+2))){
     // nu mag je voor beide partijen er 2 hoger of lager naast zitten
     $punten = 7;
   } 
   else{ $punten = 0;}
   
   echo $punten;
 
 mysql_query("UPDATE users SET punten=punten+".$punten." WHERE id=".$fetch1['id']."");
 }
 }
?>
 
             
            $query  =  mysql_query ( "SELECT thuisteam, uitteam FROM speelschema where gespeeld = 1 AND gecontroleerd = 0" )  or 
die ( mysql_error ( ) ) ;  
 
 
   if ( $fetch [ 'thuisteam' ]  ==  $fetch1 [ 'uitslagthuis' ]  &&  $fetch [ 'uitteam' ]  ==  $fetch1 [ 'uitslaguit' ] ) { //precies goed 
     $punten  =  10 ; 
   }  
   elseif ( in_array ( $fetch [ 'thuisteam' ] ,  range ( $fetch1 [ 'uitslagthuis' ] - 2 ,  $fetch1 [ 'uitslagthuis' ] + 2 ) )  &&  in_array ( $fetch [ 'uitteam' ] ,  range ( $fetch1 [ 'uitslaguit' ] - 2 ,  $fetch1 [ 'uitslaguit' ] + 2 ) ) ) {       // nu mag je voor beide partijen er 2 hoger of lager naast zitten 
     $punten  =  7 ; 
   }  
   else {  $punten  =  0 ; } 
 
 
 mysql_query ( "UPDATE users SET punten=punten+" . $punten . " WHERE id=" . $fetch1 [ 'id' ] . "" ) ;   
 } 
 } 
 
 
?> 
 
         
     
  
                      
                
                    
                         
                    
                        
		
		
	             
 
                
Je moet ingelogd  zijn om een reactie te kunnen posten.