Avatar billede benjaboy Nybegynder
06. februar 2009 - 13:53 Der er 4 kommentarer og
1 løsning

Problem med if .

Hejsa.

Jeg har et problem med en kode. :)
Her er en forklaring til hvad den skal:

Hvis bid og kid allerede er i konkurrencedeltager skal den skrive denne kode:

echo'
<hr style="border: 1px solid #008B8B; width: 90%;" /><br />
<table>
<tr>
<td width="30%"><img border="0" src=http://mlz.dk/getpen/images/konkurrence/'.$row[kbillede].' align="left"></td>
<td></td>
<td width="50%">'.$row[ktekst].'</td>
<td></td>
<td width="10%" align="center"><h3>'.$row[kpris].' points</h3><br>Du er med</td>
</tr>
</table>
';

Men hvis den ikke er skal den skrive dette:

echo'
<hr style="border: 1px solid #008B8B; width: 90%;" /><br />
<table>
<tr>
<td width="30%"><img border="0" src=http://mlz.dk/getpen/images/konkurrence/'.$row[kbillede].' align="left"></td>
<td></td>
<td width="50%">'.$row[ktekst].'</td>
<td></td>
<td width="10%" align="center"><h3>'.$row[kpris].' points</h3><br><a href=http://www.mlz.dk/getpen/dik.php?kid='.$row["kid"].'&bid='.$userdata["user_id"].'>Deltag</a></td>
</tr>
</table>
';

-------
Jeg har prøvet og lave en samlede kode men den virker ikke helt.

<?php
$query77 = mysql_query("SELECT * FROM ".$db_prefix."konkurrence ORDER BY kid DESC") or die(mysql_error());
while($row = mysql_fetch_assoc($query77)) {


$query77 = mysql_query("SELECT * FROM ".$db_prefix."konkurrencedeltager") or die(mysql_error());
while($row1 = mysql_fetch_assoc($query77)) {
$bid = $row1[bid];
$kid = $row1[kid];
if($bid = $userdata["user_id"] AND $kid =  $row[kid]) {
echo'
<hr style="border: 1px solid #008B8B; width: 90%;" /><br />
<table>
<tr>
<td width="30%"><img border="0" src=http://mlz.dk/getpen/images/konkurrence/'.$row[kbillede].' align="left"></td>
<td></td>
<td width="50%">'.$row[ktekst].'</td>
<td></td>
<td width="10%" align="center"><h3>'.$row[kpris].' points</h3><br>Du er med</td>
</tr>
</table>
';

}ELSE{


echo'
<hr style="border: 1px solid #008B8B; width: 90%;" /><br />
<table>
<tr>
<td width="30%"><img border="0" src=http://mlz.dk/getpen/images/konkurrence/'.$row[kbillede].' align="left"></td>
<td></td>
<td width="50%">'.$row[ktekst].'</td>
<td></td>
<td width="10%" align="center"><h3>'.$row[kpris].' points</h3><br><a href=http://www.mlz.dk/getpen/dik.php?kid='.$row["kid"].'&bid='.$userdata["user_id"].'>Deltag</a></td>
</tr>
</table>
';
}
}
?>

Nogle der kan hjælpe mig? :)
Mvh Benjamin
Avatar billede mstorgaard Praktikant
06. februar 2009 - 14:06 #1
Hvad melder den af fejl?

Og for at spare noget unødvendig kode anbefaler jeg dig at omskrive din kode lidt, så hele din if/else udskiftes med dette:

echo'
<hr style="border: 1px solid #008B8B; width: 90%;" /><br />
<table>
<tr>
<td width="30%"><img border="0" src=http://mlz.dk/getpen/images/konkurrence/'.$row[kbillede].' align="left"></td>
<td></td>
<td width="50%">'.$row[ktekst].'</td>
<td></td>
<td width="10%" align="center">';
if($bid == $userdata["user_id"] AND $kid ==  $row[kid]) {
<h3>'.$row[kpris].' points</h3><br>Du er med
}else{
echo'<h3>'.$row[kpris].' points</h3><br><a href=http://www.mlz.dk/getpen/dik.php?kid='.$row["kid"].'&bid='.$userdata["user_id"].'>Deltag</a>';
}
echo'</td>
</tr>
</table>
';

Men problemet er muligvis, at du har skrevet = og ikke ==. Prøv med min kode.
Avatar billede benjaboy Nybegynder
06. februar 2009 - 14:23 #2
Din kode virkede ikke helt men denne gør:

<?php
$query77 = mysql_query("SELECT * FROM ".$db_prefix."konkurrence ORDER BY kid DESC") or die(mysql_error());
while($row = mysql_fetch_assoc($query77)) {


$query77 = mysql_query("SELECT * FROM ".$db_prefix."konkurrencedeltager") or die(mysql_error());
while($row1 = mysql_fetch_assoc($query77)) {
$bid = $row1[bid];
$kid = $row1[kid];
}
echo'
<hr style="border: 1px solid #008B8B; width: 90%;" /><br />
<table>
<tr>
<td width="30%"><img border="0" src=http://mlz.dk/getpen/images/konkurrence/'.$row[kbillede].' align="left"></td>
<td></td>
<td width="50%">'.$row[ktekst].'</td>
<td></td>
<td width="10%" align="center">';
if($bid == $userdata["user_id"] AND $kid ==  $row[kid]) {
echo"
<h3>'.$row[kpris].' points</h3><br>Du er med
";
}else{
echo'<h3>'.$row[kpris].' points</h3><br><a href=http://www.mlz.dk/getpen/dik.php?kid='.$row["kid"].'&bid='.$userdata["user_id"].'>Deltag</a>';
}
echo'</td>
</tr>
</table>
';

}
?>


Men der er stadig nogle fejl.
Altså for det først.
1. Lige meget hvad så siger den deltag.
Og jeg har tjekket. Den kode der sender dataerne videre til tabel virker fint.
2. Også viser den også kun den med den højeste $row[id]. Den skal vise alle.

Mvh Benjamin
Avatar billede benjaboy Nybegynder
06. februar 2009 - 14:40 #3
Den her viser alle. Men den skriver hele tiden deltag:
<?php
$query77 = mysql_query("SELECT * FROM ".$db_prefix."konkurrencedeltager") or die(mysql_error());
while($row1 = mysql_fetch_assoc($query77)) {
$bid = $row1[bid];
$kid = $row1[kid];

$query77 = mysql_query("SELECT * FROM ".$db_prefix."konkurrence ORDER BY kid DESC") or die(mysql_error());
while($row = mysql_fetch_assoc($query77)) {

echo'
<hr style="border: 1px solid #008B8B; width: 90%;" /><br />
<table>
<tr>
<td width="30%"><img border="0" src=http://mlz.dk/getpen/images/konkurrence/'.$row[kbillede].' align="left"></td>
<td></td>
<td width="50%">'.$row[ktekst].'</td>
<td></td>
<td width="10%" align="center">';
if($bid == $userdata["user_id"] AND $kid ==  $row[kid]) {
echo"
<h3>'.$row[kpris].' points</h3><br>Du er med
";
}else{
echo'<h3>'.$row[kpris].' points</h3><br><a href=http://www.mlz.dk/getpen/dik.php?kid='.$row["kid"].'&bid='.$userdata["user_id"].'>Deltag</a>';
}
echo'</td>
</tr>
</table>
';

}
}
?>
Avatar billede benjaboy Nybegynder
07. februar 2009 - 21:58 #4
Har prøvet og sætte de 2 tabeller forspørgelser sammen med FULD JOIN?

<?
$userid = $userdata["user_id"];
$sql ="
SELECT *
FROM ".$db_prefix."konkurrencedeltager
FULL JOIN ".$db_prefix."konkurrence
WHERE bruger = \"$userid\"";
$query = mysql_query($sql) or die(mysql_error());
while($result = mysql_fetch_assoc($query)){
$bid = $result['bruger'];
$kdid = $result['kdid'];
$kid = $result['kid'];
if($kid == $result['kdid']){
echo"Du er med i ".$kid."<br>";
}ELSE{
echo"Du er ikke med i ".$kid."<br>";
}
}
?>

Men det giver dette resultat:
Du er ikke med i 1
Du er med i 5
Du er med i 1
Du er ikke med i 5
Du er ikke med i 1
Du er ikke med i 5

Og det jo lidt forkert?

Mvh Benjamin
Avatar billede benjaboy Nybegynder
08. februar 2009 - 19:11 #5
har fået hjælpen her:
http://www.eksperten.dk/spm/861568

Men ellers tak for hjælpen :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester