Top
Phpuniverset logo
 

INDHOLD

Forside

Script libary

Job annoncer

Tips og Tricks

Konkurrence

Downloads

Dokumenter

PHP bog shop

Forum

Online udviklere


ARTIKLER

CSS

Diverse

E-handel / annoncer

Grafik

Html

Internet

Javascript

Linux

PHP/MySQL

Programmer

Flash

Søgemaskiner

Windows

C / C++


INFO

Information

Annoncering

Kontakt

Forside Forum PHP, mysql Sv: Virker ikke helt... Hjælp

Sv: Virker ikke helt... Hjælp


 

Sv: Virker ikke helt... Hjælp

Per H  

Jeg har lavet så når man logger ind så kan man se hvad man har fået for (det er til en
skole) men tysk og fysik er valgfag, så de opgaver skal kun visen hvis man har de fag, men
den vil ikke vise dem... why???


Kode:
<?php session_start();
    require_once(
"db/database.php");
        
$db_hent mysql_query("select * from opgaver where class = '$_GET[class]'");
        
$db_tysk mysql_query("select * from opgaver where class = 'tysk'");
        
$db_fysik mysql_query("select * from opgaver where class = 'fysik'");
        
$db_fag mysql_query("select * from fag where userid = '$_SESSION[id]'");
            
            if(
$db_hent NULL){
        
?>
        <table width="100%" style="border-bottom:#000000 1px solid;">
            <tr style="border-bottom:#CCCCCC 1px dotted;">
                <td width="67%"><font color="#000000"><b>Opgave</b></font></td>
                <td width="17%" align="center"><i>Fag</i></td>
                <td width="16%">Til den.</td>
            </tr>
        </table>
        <?
        
while($hent mysql_fetch_array($db_hent)){

            print 
'<table width="100%" style="border-bottom:#CCCCCC 1px dotted;" id="td33'.
$hent[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'$hent[id]
.
', 40);" onmouseout="javascript: stopFade(33'$hent[id] .');">
                    <tr>
                        <td width="67%"><a href="javascript:showopgave('
$hent[id] .');"><font
color="#000000"><b>&raquo;&nbsp;'
$hent[emne] .'</b></font></a></td>
                        <td width="17%" align="center"><i>('
$hent[fag] .')</i></td>
                        <td width="16%">'
$hent[dato] .'.</td>
                    </tr>
                   </table>'
;
    
}

    while(
$hent mysql_fetch_array($db_hent)){
        while(
$tjek mysql_fetch_array($db_fag)){
            if(
$tjek['fag1'] == "on"){
    
        while(
$fag mysql_fetch_array($db_tysk)){
        

            print 
'<table width="100%" style="border-bottom:#CCCCCC 1px dotted;" id="td33'.
$fag[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'$hent[id] .',
40);" onmouseout="javascript: stopFade(33'
$fag[id] .');">
                    <tr>
                        <td width="67%"><a href="javascript:showopgave('
$hent[id] .');"><font
color="#000000"><b>'
$fag[emne] .'</b></font></a></td>
                        <td width="17%" align="center"><i>('
$fag[fag] .')</i></td>
                        <td width="16%">'
$fag[dato] .'.</td>
                    </tr>
                   </table>'
;

    }    
}
    if(
$tjek['fag2'] == "on"){
        
            while(
$fag mysql_fetch_array($db_fysik)){
    
                print 
'<table width="100%" style="border-bottom:#CCCCCC 1px dotted;" id="td33'.
$fag[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'$hent[id] .',
40);" onmouseout="javascript: stopFade(33'
$fag[id] .');">
                        <tr>
                            <td width="67%"><a href="javascript:showopgave('
$hent[id] .');"><font
color="#000000"><b>'
$fag[emne] .'</b></font></a></td>
                            <td width="17%" align="center"><i>('
$fag[fag] .')</i></td>
                            <td width="16%">'
$fag[dato] .'.</td>
                        </tr>
                       </table>'
;
    
                }    
            }
        }
    }
}
?>

Hvad er der galt???

//heymann



Dato : 24.09.2006, 19:57

Visninger : 569

Points : 0

 

Det er svært umiddelbart at få øje på.... Jeg faldt dog over følgende: if ($db_hent >
NULL) - skal det ikke være: if ($db_hent != NULL)? 


Dato : 21.09.2006, 14:21

Kommentar af : mirko  

 

nej har prøvet det....

Dato : 21.09.2006, 15:00

Kommentar af : Per H  

 

Har du sat tracers ind gennem koden for at se hvad det er programmet ikke læser? Else- og
echo-sætninger? Fx sådan noget som at tjekke om 
$db_hent = mysql_query("select * from opgaver where class = '$_GET[class]'");
overhoved henter noget... 


Dato : 22.09.2006, 10:36

Kommentar af : mirko  

 

Altså den henter alle fag,undtagen tysk og fysik, men jeg har lavet en test bruger som
skulle kunne se fysik, men det vil den ikke, :( ellers virker det andet, (den vil heller
ikke vise tydk)...

//Per H


Dato : 23.09.2006, 20:03

Kommentar af : Per H  

 

Men fx i sådan en løkke-klump som den her:

    while($hent = mysql_fetch_array($db_hent)){
        while($tjek = mysql_fetch_array($db_fag)){
            if($tjek['fag1'] == "on"){
    
        while($fag = mysql_fetch_array($db_tysk)){ 


hvilken løkke er det så den ikke går ind i, siden den ikke vil vise tysk? Jeg går ud fra
den går ind i den første eftersom det er den samme som ovenfor. 

Men sæt fx echo $tjek ind efter
        while($tjek = mysql_fetch_array($db_fag)){
for at se om løkken producerer det den skal.

Og sæt en else-sætning på if-løkken:
  if($tjek['fag1'] == "on"){
    echo "if-delen virker";
    ....
  }
  else
    echo "else-delen virker";

og lignende... Forstår du hvad jeg mener? Det er typisk nemmere hvis du ved præcis hvilken
del programmet ikke udfører.


Dato : 24.09.2006, 13:14

Kommentar af : mirko  

 

Kan du ikke prøve at vise det på min kode?????

Dato : 24.09.2006, 19:57

Kommentar af : Per H  

 

Værsgo. Jeg har ikke gjort noget ved fysik-løkken da det må være det samme problem som i
tysk-løkken. Det er muligt at jeg har glemt et semi-kolon et sted, men det kan du jo bare
rette.

<?php session_start();
    require_once(
"db/database.php");
        
$db_hent mysql_query("select * from opgaver where class = '$_GET[class]'");
        
$db_tysk mysql_query("select * from opgaver where class = 'tysk'");
        
$db_fysik mysql_query("select * from opgaver where class = 'fysik'");
        
$db_fag mysql_query("select * from fag where userid = '$_SESSION[id]'");
            
            if(
$db_hent NULL){
        
?>
        <table width="100%" style="border-bottom:#000000 1px solid;">
            <tr style="border-bottom:#CCCCCC 1px dotted;">
                <td width="67%"><font color="#000000"><b>Opgave</b></font></td>
                <td width="17%" align="center"><i>Fag</i></td>
                <td width="16%">Til den.</td>
            </tr>
        </table>
        <?
        
while($hent mysql_fetch_array($db_hent)){

            print 
'<table width="100%" style="border-bottom:#CCCCCC 1px dotted;"
id="td33'
$hent[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'.
$hent[id] .', 40);" onmouseout="javascript: stopFade(33'$hent[id] .');">
                    <tr>
                        <td width="67%"><a href="javascript:showopgave('
$hent[id]
.
');"><font color="#000000"><b>&raquo;&nbsp;'$hent[emne] .'</b></font></a></td>
                        <td width="17%" align="center"><i>('
$hent[fag] .')</i></td>
                        <td width="16%">'
$hent[dato] .'.</td>
                    </tr>
                   </table>'
;
    
}

    while(
$hent mysql_fetch_array($db_hent)){

echo 
"$hent: ".$hent//tjekker hvad den henter fra db_hent

        
while($tjek mysql_fetch_array($db_fag)){

echo 
"$tjek: ".$tjek//tjekker hvad den henter fra db_fag

            
if($tjek['fag1'] == "on"){

echo 
"Den går ind i if-løkken";
    
        while(
$fag mysql_fetch_array($db_tysk)){

echo 
"$fag: ".$fag//tjekker hvad den henter fra db_tysk        

            
print '<table width="100%" style="border-bottom:#CCCCCC 1px dotted;"
id="td33'
$fag[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'.
$hent[id] .', 40);" onmouseout="javascript: stopFade(33'$fag[id] .');">
                    <tr>
                        <td width="67%"><a href="javascript:showopgave('
$hent[id]
.
');"><font color="#000000"><b>'$fag[emne] .'</b></font></a></td>
                        <td width="17%" align="center"><i>('
$fag[fag] .')</i></td>
                        <td width="16%">'
$fag[dato] .'.</td>
                    </tr>
                   </table>'
;

    }    
}

else {
echo 
"Den går ikke ind i if-løkken";
}

    if(
$tjek['fag2'] == "on"){
        
            while(
$fag mysql_fetch_array($db_fysik)){
    
                print 
'<table width="100%" style="border-bottom:#CCCCCC 1px dotted;"
id="td33'
$fag[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'.
$hent[id] .', 40);" onmouseout="javascript: stopFade(33'$fag[id] .');">
                        <tr>
                            <td width="67%"><a href="javascript:showopgave('
$hent[id]
.
');"><font color="#000000"><b>'$fag[emne] .'</b></font></a></td>
                            <td width="17%" align="center"><i>('
$fag[fag] .')</i></td>
                            <td width="16%">'
$fag[dato] .'.</td>
                        </tr>
                       </table>'
;
    
                }    
            }
        }
    }
}
?> 


Dato : 26.09.2006, 12:36

Kommentar af : mirko  

 

Den ud skriver ikke noget,,, :(

Dato : 28.09.2006, 15:35

Kommentar af : Per H  

 

ok... Løkken der hedder

  while($hent = mysql_fetch_array($db_hent)){

kommer jo to gange. Udskriver den første noget? Prøv evt. at omdøbe nr. 2:

<?php session_start();
    require_once(
"db/database.php");
        
$db_hent mysql_query("select * from opgaver where class = '$_GET[class]'");
        
$db_tysk mysql_query("select * from opgaver where class = 'tysk'");
        
$db_fysik mysql_query("select * from opgaver where class = 'fysik'");
        
$db_fag mysql_query("select * from fag where userid = '$_SESSION[id]'");
            
            if(
$db_hent NULL){
        
?>
        <table width="100%" style="border-bottom:#000000 1px solid;">
            <tr style="border-bottom:#CCCCCC 1px dotted;">
                <td width="67%"><font color="#000000"><b>Opgave</b></font></td>
                <td width="17%" align="center"><i>Fag</i></td>
                <td width="16%">Til den.</td>
            </tr>
        </table>
        <?
        
while($hent mysql_fetch_array($db_hent)){

            print 
'<table width="100%" style="border-bottom:#CCCCCC 1px dotted;"
id="td33'
$hent[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'.
$hent[id] .', 40);" onmouseout="javascript: stopFade(33'$hent[id] .');">
                    <tr>
                        <td width="67%"><a href="javascript:showopgave('
$hent[id]
.
');"><font color="#000000"><b>&raquo;&nbsp;'$hent[emne] .'</b></font></a></td>
                        <td width="17%" align="center"><i>('
$hent[fag] .')</i></td>
                        <td width="16%">'
$hent[dato] .'.</td>
                    </tr>
                   </table>'
;
    
}

    while(
$hent2 mysql_fetch_array($db_hent)){

echo 
"$hent2: ".$hent2//tjekker hvad den henter fra db_hent

        
while($tjek mysql_fetch_array($db_fag)){

echo 
"$tjek: ".$tjek//tjekker hvad den henter fra db_fag

            
if($tjek['fag1'] == "on"){

echo 
"Den går ind i if-løkken";
    
        while(
$fag mysql_fetch_array($db_tysk)){

echo 
"$fag: ".$fag//tjekker hvad den henter fra db_tysk        

            
print '<table width="100%" style="border-bottom:#CCCCCC 1px dotted;"
id="td33'
$fag[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'.
$hent2[id] .', 40);" onmouseout="javascript: stopFade(33'$fag[id] .');">
                    <tr>
                        <td width="67%"><a href="javascript:showopgave('
$hent2[id]
.
');"><font color="#000000"><b>'$fag[emne] .'</b></font></a></td>
                        <td width="17%" align="center"><i>('
$fag[fag] .')</i></td>
                        <td width="16%">'
$fag[dato] .'.</td>
                    </tr>
                   </table>'
;

    }    
}

else {
echo 
"Den går ikke ind i if-løkken";
}

    if(
$tjek['fag2'] == "on"){
        
            while(
$fag mysql_fetch_array($db_fysik)){
    
                print 
'<table width="100%" style="border-bottom:#CCCCCC 1px dotted;"
id="td33'
$fag[id] .'" style="padding-right:5px;"onmouseover="javascript: setFade(33'.
$hent[id] .', 40);" onmouseout="javascript: stopFade(33'$fag[id] .');">
                        <tr>
                            <td width="67%"><a href="javascript:showopgave('
$hent[id]
.
');"><font color="#000000"><b>'$fag[emne] .'</b></font></a></td>
                            <td width="17%" align="center"><i>('
$fag[fag] .')</i></td>
                            <td width="16%">'
$fag[dato] .'.</td>
                        </tr>
                       </table>'
;
    
                }    
            }
        }
    }
}
?> 


Dato : 29.09.2006, 11:45

Kommentar af : mirko  

 

Den udskriver stadig ikkke noget... :(

Dato : 29.09.2006, 15:37

Kommentar af : Per H  

 

:-)

Det er svært at sige når man ikke selv sidder med det.... 
Jeg tror jeg ville prøve at begynde "forfra". Altså slette alt (selvfølgelig gemme koden
et sted), og så forsøge at få det til at virke linje efter linje... 


Dato : 29.09.2006, 18:06

Kommentar af : mirko  

 

Noget af det virker, det er kun tysk og fysik der ikkke, virker... :(

Kan man lave det på en anden måde??


Dato : 30.09.2006, 09:19

Kommentar af : Per H  

 

Hej 

Hvis du har fundet et svar på dit spørgsmål må du meget gerne godkende et svar eller selv
give et svar og godkende. 


Dato : 13.12.2006, 12:14

Kommentar af : Phpuniverset  




Login for at skrive et indlæg :



   Brugernavn

Password
 

+ Opret en ny Bruger, Klik her

+ Glemt brugernavn/password

 

Send Artikel/anmeldelse til: phpuni@phpuniverset.dk

Tilbage til oversigt

© Copyright 2000 Propelcom Phpuniverset's politik om personlige oplysninger, artikler & Koder Phpuniverset er optimeret til Mozilla 1024 * 768 Phpuniverset version: 3.0 beta
Webhost : Ignesco.dk

Bund