Avatar billede mrg Nybegynder
16. april 2005 - 11:38 Der er 5 kommentarer og
1 løsning

Hurtigt PHP spm

Hej,

Jeg har et simpelt kald i en tabel, hvor den slår et link op ud fra en hold-id (fodboldklub).

Der skal dog indarbejdes en lille krølle - nemlig at hvis hold id = 1 skal den dumpe puljelink for BÅDE hold 1 og 2. Ellers skal den blot lave det som det er.

Er der en der kan indarbejde den lille løkke i nedenstående kode ?

----------------kode------------------

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<?PHP 
error_reporting(E_ALL ^ (E_NOTICE | E_WARNING));
session_start();
require_once ("db_connect.php");
require_once ("global_user_validator.php");

if (!isset ($_REQUEST['hold'])) {
    $hold = 1;
} else {
    $hold = $_REQUEST['hold'];
}

// connect to database
$db = db_connection();

?><html>
<head>
<title>Puljelink</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table width="170" border="0" cellspacing="0" cellpadding="1">
  <tr>
    <td bgcolor="#000000"><table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td width="5" bgcolor="DCDCDC" class="hyper"><img src="IFRAMES/pics/transparent.gif" width="5" height="1"></td>
          <td width="100%" height="25" bgcolor="DCDCDC" class="text">
            <?php


// Denne side viser puljelink for det valgte hold.

$result = query("SELECT * FROM puljelinks WHERE holdnr = '$hold' ORDER BY holdnr");
$num_results = mysql_numrows($result);
$error = mysql_error($db);

if ($error) {
    echo "<br> noget gik galt! Fejl: ".$error;
    return;
}

if ($num_results == 1) {
    $row = mysql_fetch_array($result);

    // Her kan layoutet for pulelink ændres !
    if (strlen($row["puljenavn"]) > 24) {
        $theLinkText = substr($row["puljenavn"], 0, 24)."...";
    } else {
        $theLinkText = $row["puljenavn"];
    }

    echo "<A href=\"".$row["puljelink"]."\" target=\"_blank\"><u>".$theLinkText."</u></a>";
    }
?>
          </td>
          <td width="5" bgcolor="DCDCDC" class="hyper"><img src="IFRAMES/pics/transparent.gif" width="5" height="1"></td>
        </tr>
      </table></td>
  </tr>
</table>
</body>
</html>
Avatar billede busschou Praktikant
16. april 2005 - 14:38 #1
sådan her måske:
if($hold==1){
$result = query("SELECT * FROM puljelinks WHERE holdnr = 1 OR holdnr = 2 ORDER BY holdnr");
}else{
$result = query("SELECT * FROM puljelinks WHERE holdnr = '$hold' ORDER BY holdnr");
}
Avatar billede mrg Nybegynder
16. april 2005 - 16:14 #2
Hmmmm...når jeg sætter det ind kommer der ikke noget ud...mangler der ikke en løkke funktion ?

Jeg skal lige sige at jeg ikke er skarp på php-fronten ... ovenstående er dannet af andre kald jeg har liggende...
Avatar billede cyberdudes Nybegynder
18. april 2005 - 09:54 #3
Hvis du flår flere resultater fra din sql query får du ikke vist nået. Det står i denne lineje if ($num_results == 1) hvis antallet af resultater er = 1 så vis dette. Der skal laves en else til denne if hvor du viser de 2 resultater fra hold 1 og 2.
Avatar billede mrg Nybegynder
18. april 2005 - 10:06 #4
Tak...og hvordan skal det så se ud ?
Avatar billede cyberdudes Nybegynder
12. maj 2005 - 09:54 #5
if ($num_results == 1) {
    $row = mysql_fetch_array($result);

    // Her kan layoutet for pulelink ændres !
    if (strlen($row["puljenavn"]) > 24) {
        $theLinkText = substr($row["puljenavn"], 0, 24)."...";
    } else {
        $theLinkText = $row["puljenavn"];
    }

    echo "<A href=\"".$row["puljelink"]."\" target=\"_blank\"><u>".$theLinkText."</u></a>";
    }
else
{?>
Vis en masse når der er flere hold...  Skal laves med en løkke f.eks en for(){}
<?}
Avatar billede busschou Praktikant
14. juli 2005 - 18:57 #6
mrg >> kommet videre? lukketid ? ;o)
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