Avatar billede fancy Mester
08. februar 2010 - 21:46 Der er 8 kommentarer og
1 løsning

If

nedtestånde virker fint men jeg kunne godt bruge en funktion mere .
Når en person møder på vagt for vedkommende en bluse, men kun på den første vagt hvis den samme person møder næste dag for han ingen.
jeg har prøvet med denne if sætning men den kan kun se når man er mødt

if ($Kommet = 1)
  echo "Trøje udlevet";

mit script ser såden her ud


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>find</title>
<style type="text/css">
<!--
body {
    background-color: #99FFFF;
}
-->
</style>
</head>

<?php

include("connect.php");
$title = 'xxx';


if(isset($_POST['tekst_soeg'])){
    $tekst_soeg = $_POST['tekst_soeg'];
    $sql_hent = "SELECT kid, Navn, Adresse, Bynavn, Forening, Email, Kommet, Sted , Fra , Til, Dag FROM vagtplan_2009_ WHERE Navn LIKE '%$tekst_soeg%' OR Adresse LIKE '%$tekst_soeg%' ORDER BY Navn DESC";
    $hent = mysql_query($sql_hent) or die(mysql_error());
    if($hent && (mysql_num_rows($hent) > 0)){
        echo "<b><center>Dette blev fundet:</b>";
        echo "<center><table width=\"350\" bgcolor=\"#e4ecff\" cellspacing=\"1\">";
        while($vis = mysql_fetch_array($hent)){
            echo "<tr><td>";
           
            echo "<br/>";
                echo "Navn : ";
              echo $vis['Navn'];
                echo "<br/>";
              echo "Adresse : ";
            echo $vis['Adresse'];
            echo "<br/>";
            echo "Forening : ";
                echo $vis['Forening'];
              echo "<br/>";
                    echo "Sted : ";
            echo $vis['Sted'];
            echo "<br/>";
                echo "Dag : ";
            echo $vis['Dag'];
            echo "<br/>";
            echo "Fra : ";
            echo $vis['Fra'];
            echo "<br/>";
            echo "Til : ";
            echo $vis['Til'];
            echo "<br/>";
           
           
           
            if( $vis['Kommet'] != '1'){
            echo "<a style=\"color: #3f74ec;\" href=\"?update=1&id=".$vis['kid']."\">Ikke mødt på vagt</a>";
            }else {
                echo "<span style=\"color: #ff0000;\">Er allerede mødt på vagt</span>";
                echo "<br/><br/><br/>";
            }
        echo "</td></tr>";
        }
        echo '</table>';
    }else
        echo "<br/><b><center>Fandt ingen !! <br>Prøv lige at tage dig sammen og skriv et navn der findes<br>Husk at du også kan søge på adressen</b> ";
        echo "<br/><br/><br/>";
}elseif (isset($_GET['update']) && $_GET['update']== '1') {
    $id = intval($_GET['id']);
    $sql_update = "UPDATE vagtplan_2009_ SET Kommet = '1' WHERE kid=$id";
    $result = mysql_query($sql_update) or die(mysql_error());
    echo "<br/><br/><br/>";
  echo "<b><center>Personen er nu mødt på vagt :</b>: ";echo "<br/><br/><br/>";
}else {
?>
<center><img src="top.jpg" width="800" height="130" />
<br><br><br><br><br>

Indtast navn eller adresse i søge feltet<br /><br /><form method="post" action="<?php echo $_SERVER['php_self']; ?>">
<input type="text" name="tekst_soeg">
<input type="submit" value="SØG">
</form>
<?php

}
?>  <a href="find.php" target="_self">Ny søgning</a>
<br><br>
<span class="style1"><br>
<br>
</span><br>
<a href="kommet.php">Hvem er mødt</a>
<br><br>
<a href="ikke_kommet.php">Hvem er ikke mødt</a>
<br><br>
<a href="bf.php">Se timer </a>
<br><br>
<a href="tilmeld.php">Tilføj </a>
<body>

</body>
</html>
Avatar billede a2p-dk Nybegynder
09. februar 2010 - 00:41 #1
if ($kommet == 1)
Avatar billede mike2002 Nybegynder
09. februar 2010 - 11:54 #2
Du skal vel have et nyt felt i din tabel, fx. bluseudl smallint 2 default 0.

I din update query skal du så have:
"UPDATE vagtplan_2009_ SET Kommet = '1', bluseudl = '1' WHERE kid=$id";

Og så et ekstra input i din html-table:
if( $vis['bluseudl] != '1'){
            echo "<a style=\"color: #3f74ec;\" href=\"?update=1&id=".$vis['kid']."\">Har ikke fået trøje</a>";
            }else {
                echo "<span style=\"color: #ff0000;\">Har fået trøje</span>";
                echo "<br/><br/><br/>";
            }

Du skal nok lige rette lidt i html'en for at få det til at se pænt ud.
Avatar billede fancy Mester
09. februar 2010 - 16:53 #3
Øv altså jeg kan ikke finde ud af at sætte det sammen

Jeg har oprettet feltet i min db
Avatar billede mike2002 Nybegynder
10. februar 2010 - 00:15 #4
Prøv sådan og lad os høre hvordan det går...

if(isset($_POST['tekst_soeg'])){
    $tekst_soeg = $_POST['tekst_soeg'];
    $sql_hent = "SELECT kid, Navn, Adresse, Bynavn, Forening, Email, Kommet, bluseudl, Sted , Fra , Til, Dag FROM vagtplan_2009_ WHERE Navn LIKE '%$tekst_soeg%' OR Adresse LIKE '%$tekst_soeg%' ORDER BY Navn DESC";
    $hent = mysql_query($sql_hent) or die(mysql_error());
    if($hent && (mysql_num_rows($hent) > 0)){
        echo "<b><center>Dette blev fundet:</b>";
        echo "<center><table width=\"350\" bgcolor=\"#e4ecff\" cellspacing=\"1\">";
        while($vis = mysql_fetch_array($hent)){
            echo "<tr><td>";
         
            echo "<br/>";
                echo "Navn : ";
              echo $vis['Navn'];
                echo "<br/>";
              echo "Adresse : ";
            echo $vis['Adresse'];
            echo "<br/>";
            echo "Forening : ";
                echo $vis['Forening'];
              echo "<br/>";
                    echo "Sted : ";
            echo $vis['Sted'];
            echo "<br/>";
                echo "Dag : ";
            echo $vis['Dag'];
            echo "<br/>";
            echo "Fra : ";
            echo $vis['Fra'];
            echo "<br/>";
            echo "Til : ";
            echo $vis['Til'];
            echo "<br/>";
         
          if( $vis['bluseudl] != '1'){
            echo "<a style=\"color: #3f74ec;\" href=\"?update=1&id=".$vis['kid']."\">Har ikke fået trøje</a>";
            }else {
                echo "<span style=\"color: #ff0000;\">Har fået trøje</span>";
                echo "<br/><br/><br/>";
            }
         
            if( $vis['Kommet'] != '1'){
            echo "<a style=\"color: #3f74ec;\" href=\"?update=1&id=".$vis['kid']."\">Ikke mødt på vagt</a>";
            }else {
                echo "<span style=\"color: #ff0000;\">Er allerede mødt på vagt</span>";
                echo "<br/><br/><br/>";
            }
        echo "</td></tr>";
        }
        echo '</table>';
    }else
        echo "<br/><b><center>Fandt ingen !! <br>Prøv lige at tage dig sammen og skriv et navn der findes<br>Husk at du også kan søge på adressen</b> ";
        echo "<br/><br/><br/>";
}elseif (isset($_GET['update']) && $_GET['update']== '1') {
    $id = intval($_GET['id']);
    $sql_update = "UPDATE vagtplan_2009_ SET Kommet = '1' WHERE kid=$id";
    $result = mysql_query($sql_update) or die(mysql_error());
    echo "<br/><br/><br/>";
  echo "<b><center>Personen er nu mødt på vagt :</b>: ";echo "<br/><br/><br/>";
}else {
?>
<center><img src="top.jpg" width="800" height="130" />
<br><br><br><br><br>

Indtast navn eller adresse i søge feltet<br /><br /><form method="post" action="<?php echo $_SERVER['php_self']; ?>">
<input type="text" name="tekst_soeg">
<input type="submit" value="SØG">
</form>
<?php

}
?>
Avatar billede fancy Mester
11. februar 2010 - 22:51 #5
den siger

Parse error: syntax error, unexpected T_LNUMBER, expecting ']' in C:\xampp\htdocs\find.php on line 55
Avatar billede fancy Mester
12. februar 2010 - 09:52 #6
Her fundtet fejlen det virker fint nok nu Men det er ikke særlig anvendeligt da en person kan stå flere gange i db og det er er kun det valgte felt der bliver updatet.
men det var ikke det jeg spugte om mike2002 læg et svar


men hvis du har en ide til hvordan jeg kunne gøre vil jeg gerne høre om det
Avatar billede mike2002 Nybegynder
12. februar 2010 - 13:42 #7
Er det fordi der er en record for hver gang en person skal på vagt?

Jeg tror, at jeg ville dele tabellen op i to/tre: en tabel med personens oplysninger: kid (unikt id), Navn, adresse, by, email, forening - og så en med oplysninger om vagter: Uid, kid, Kommet, Sted , Fra , Til, Dag, year (nyt felt). Og så tror jeg, jeg ville lave en særskilt tabel til at registrere, om personen har fået trøje: Uid, kid, year, bluseudl.

Det kræver selvfølgelig nogle lidt mere avancerede sql-queries, men det er nok den "rigtige" måde at gøre det på.

Det følgende er selvfølgelig fuldstændig utestet og ment som forslag...

$sql_hent = "SELECT kid, Navn, Adresse FROM personer WHERE Navn LIKE '%$tekst_soeg%' OR Adresse LIKE '%$tekst_soeg%' ORDER BY Navn DESC";
    $hent = mysql_query($sql_hent) or die(mysql_error());
    if($hent && (mysql_num_rows($hent) > 0)){
        echo "<b><center>Dette blev fundet:</b>";
        echo "<center><table width=\"350\" bgcolor=\"#e4ecff\" cellspacing=\"1\">";
        while($vis = mysql_fetch_array($hent)){
    $i = 0;
    $id = $vis["kid"];
    $year = $selected_year; // Skal du selv lige lave om...
    $sql2 = "SELECT * FROM vagter WHERE kid=" . $id . " AND year=" . $year . " ORDER BY Sted";
    $vagter = mysql_query($sql2) or die(mysql_error());
    if($vagter && (mysql_num_rows($sql2) > 0)){
    echo $vis["Navn"] . ", " . $vis["adresse"] . " har disse vagter:";
        while($row = mysql_fetch_array($vagter))
        {
            echo "<p>Vagt #" . $i . ":<br>";
            echo $row["Sted"] . ", " . $row["Dag"] . "<br>";
            echo $row["fra"] . " - " . $row["til"] . "<br>";
            if($row["kommet"] == 1) echo "Er kommet.<br>";
            else echo "Er ikke kommet endnu.";
        }
    }
    else echo $vis["Navn"] . ", " . $vis["adresse"] . " har ikke nogen vagter:";
    $sql3 = "SELECT * FROM bluser WHERE kid=" .$id . " AND year=" . $year . " LIMIT 1";
    $bluser = mysql_query($sql3) or die(mysql_error());
    if(bluser && (mysql_num_rows($sql3) == 1)){
    $result = mysql_fetch_object($sql3);
    if($result->bluseudl == 1) echo "Har fået trøje<br>";
    else echo "Har ikke fået trøje<br>";
    }
  }
}
Avatar billede fancy Mester
12. februar 2010 - 15:41 #8
det lyder rigtigt

og det rigtigt at samme person kan have flere id'er

jeg prøver sætte det op, men hvorfor har du year med ??
Avatar billede mike2002 Nybegynder
12. februar 2010 - 17:26 #9
Så kan du bruge det igen næste år!!
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