Avatar billede Labrador Nybegynder
07. november 2010 - 12:14 Der er 15 kommentarer og
1 løsning

Automastk stop for tilmelding

Hej.
Jeg er helt ny i gårde. Jeg har lige oprettet phpMYADmin på min pc, og det går helt fint med at sende data til databasen med php/html script og trække dem ud igen i tabeler.
Jeg har overtaget 2. store php/html script, som jeg bruger til, tilmelding bla. til træning, og det funger fint, men jeg mangler et script som automatisk lukker for tilmeldingen når et X antal er tilmeldt, og samtidig skriver "Der er lukket for tilmelding"

Er der nogen som kan hjælpe mig?
Avatar billede rix Praktikant
07. november 2010 - 12:53 #1
det skulle være rimlig nemt kommer lige med en eks. her :D


$antal = "10"
$sql = mysql_query("SELECT * FROM din_table") or die(mysql_error());
$result = mysql_num_rows($sql);
if ($result > $antal){
echo "din teskt når der er for mange";
}
else{
hvad nu du skal have igenem
}
Avatar billede webweaver Praktikant
07. november 2010 - 12:54 #2
[div]<?php

$maxAntal = 15;

$antal_tilmeldte = mysql_query("SELECT COUNT(*) AS antal FROM table") or die(mysql_error());

if (mysql_query($antal_tilmeldte,0) > $maxAntal)
echo "Der er lukket for tilmelding.";
} else {
Tilmeldingsscript her ....
}
Avatar billede webweaver Praktikant
07. november 2010 - 12:58 #3
Hov, det gik lidt hurtigt fra min side af :)

again;

<?php

$maxAntal = 15;

$antal_tilmeldte = mysql_query("SELECT COUNT(*) AS antal FROM table") or die(mysql_error());

if (mysql_result($antal_tilmeldte,0) > $maxAntal)
echo "Der er lukket for tilmelding.";
} else {
Tilmeldingsscript her ....
}
?>
Avatar billede Labrador Nybegynder
07. november 2010 - 16:32 #4
Hej.
Vender frygteligt tilbage, har ret travlt lige nu. Skal først oprette databasen til træninger m.m.
Hilsen Labrador.
Avatar billede Labrador Nybegynder
07. november 2010 - 16:33 #5
Hej.
Vender frygteligt tilbage, har ret travlt lige nu. Skal først oprette databasen til træninger m.m.
Hilsen Labrador.
Avatar billede Labrador Nybegynder
08. november 2010 - 15:06 #6
Hej igen.
Det funger ikke rigtigt, jeg har sat $maxAntal = 1;
og if (mysql_result($antal_tilmeldte,1) > $maxAntal)
Jeg kan ikke få skevet " Der er lukket for tilmelding" Og jeg ved ikke hvordan jeg kommer til en anden side når der er lukket.
Så har jeg fået et andet problem, jeg kan ikke få tilføjet tlf. nr. i databasen. selvom jeg bruger INT i primary key og SMALLINT i atributten "tlf"

Hilsen Labrador.
Avatar billede webweaver Praktikant
08. november 2010 - 18:11 #7
if (mysql_result($antal_tilmeldte,1) > $maxAntal)
skal også være
if (mysql_result($antal_tilmeldte,0) > $maxAntal)

Og huske at rette "table" til, så det passer dit eget tabel navn i databasen. Det skal virke. Det er testet.
Avatar billede webweaver Praktikant
08. november 2010 - 18:16 #8
Hvis du gerne vil komme videre, så kan man jo lave et link?

<?php

$maxAntal = 1;

$antal_tilmeldte = mysql_query("SELECT COUNT(*) AS antal FROM table") or die(mysql_error());

if (mysql_result($antal_tilmeldte,0) > $maxAntal)
echo "Der er lukket for tilmelding.<br>";
echo "<a href=\"minside.php\">Klik her for at gå tilbage.</a>
} else {
echo "Tilmeldingsscript her ....";
}
?>


Prøv lige at forklare det med telefonen igen? Atributten tlf?
Du har en id formentlig på dine rækker. Den skal være primær og auto_increment. Hvis du bare sætter tlf midlertidigt til text, kan du så få noget ind i det felt?
Avatar billede Labrador Nybegynder
11. november 2010 - 15:13 #9
Hej.
Der er ved at gå ged i det hele, nu kan jeg slet ikke få nogen data ind i databasen.
Jeg vender tilbage, men jeg er ikke ret maget hjemme for tiden, så der går nogen tid.
Hilsen.
Avatar billede Labrador Nybegynder
13. november 2010 - 14:25 #10
Hej. Så er jeg her igen.
Nu har jeg fået det op at køre (glem det med tlf. i første omgang)
Det funger fint med at, der står "lukket for tilmelding", når der er X antal tilmeldte, men man kan godt tilmelde sig aligevel  fordi formularen bliver stående åben og hvis jeg klikker på opdater i browseren sender den bare tommefelter til databasen.
Nu sender jeg hele mit script så kan du se hvad jeg har lavet. du skal ikke tage dig af hvordan formularen er sat op, det kun en prøve
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
      <title>Title here!</title>
</head>
<body>

  <form name="svarskema"metod="post" action="svarskema.php">

  <p>klasse: <input type="text" name="klasse" size="40" maxlength="40"></p>
  <p>fører: <input type="text" name="driver" size="30" maxlength="30"></p>
  <p>kaldenavn: <input type="text" name="kaldenavn" size="50" maxlength="50"></p>
  <p>race: <input type="text" name="race" size="30" maxlength="30"></p>

<input type="submit"name="send" value= "Del dine oplysninger med andre">
    </form>
<?php
// Henter indholdet af formularens felter
$klasse    = $_REQUEST["klasse"];
$driver    = $_REQUEST["driver"];
$kaldenavn = $_REQUEST["kaldenavn"];
$race      = $_REQUEST["race"];
// Skab forbindelse til databasen her

              mysql_connect("localhost", "","")or die (mysql_error());
              mysql_select_db ("markpr")or die (mysql_error());
//indsæt indholdet af formulfelterne i databasen

            mysql_query ("INSERT INTO svarskema(katalogNR, klasse, fører, kaldenavn, race)
            values (0, '$klasse', '$driver', '$kaldenavn', '$race')");
?>
<?php

$maxAntal = 1;

$antal_tilmeldte = mysql_query("SELECT COUNT(*) AS antal FROM svarskema") or die(mysql_error());

if (mysql_result($antal_tilmeldte,0) > $maxAntal)
echo "Der er lukket for tilmelding.";
else {

}
?>
</body>
</html>
Avatar billede webweaver Praktikant
13. november 2010 - 14:53 #11
Det er klart at det ikke virker. Du bruger ikke det postede script jeg gav dig forkert.

<!doctype html public "-//W3C//DTD HTML 4.0 //EN">

<html>

    <head>

        <title>Title here!</title>

    </head>
   
    <body>
   
        <form name="svarskema"metod="post" action="svarskema.php">
       
            <p>klasse: <input type="text" name="klasse" size="40" maxlength="40"></p>
            <p>fører: <input type="text" name="driver" size="30" maxlength="30"></p>
            <p>kaldenavn: <input type="text" name="kaldenavn" size="50" maxlength="50"></p>
            <p>race: <input type="text" name="race" size="30" maxlength="30"></p>
            <input type="submit"name="send" value= "Del dine oplysninger med andre">
       
        </form>
       
        <?php
       
            $maxAntal = 1;

            // Skab forbindelse til database her.

            $antal_tilmeldte = mysql_query("SELECT COUNT(*) AS antal FROM svarskema") or die(mysql_error());

            if (mysql_result($antal_tilmeldte,0) > $maxAntal) {
           
                echo "Der er lukket for tilmelding.";
           
            } else {
                   
                // Henter indholdet af formularens felter
                $klasse    = $_REQUEST["klasse"];
                $driver    = $_REQUEST["driver"];
                $kaldenavn = $_REQUEST["kaldenavn"];
                $race      = $_REQUEST["race"];
               
                mysql_query ("INSERT INTO svarskema(katalogNR, klasse, fører, kaldenavn, race) values (0, '$klasse', '$driver', '$kaldenavn', '$race')");

            }
        ?>
       
    </body>
   
</html>
Avatar billede webweaver Praktikant
13. november 2010 - 14:57 #12
Formen vil stadig blive vist, om der er lukket for tilmelding eller ej, men den vil ikke sende data til databasen længere, selvom man udfylder den og submitter.

Man kan godt gøre så den skjules. Men det er ikke rigtig hvad tråden her omhandler. Og det samme med at man kan submitte med tomme feltet. Så skal der validering på, hvis man ikke skal kunne det. Hvis det er noget du vil rode med, men ikke ved hvordan det laves, kan du oprette en ny tråd til det :-)
Avatar billede Labrador Nybegynder
25. november 2010 - 12:46 #13
Hej Igen. Så gik mit grafikkort, derfor så lang tid. Jeg har fået det til at fungere, det er muligt jeg skal prøve det du skriver om validering, men så vender jeg tilbage. Tak.
NB jeg ved ikke hvordan du får dine point?
Hilsen Labrador.
Avatar billede webweaver Praktikant
25. november 2010 - 17:29 #14
Jeg lægger et svar.
Nu kan du tildele mig point :)

Først efter en person eller flere har lagt et svar, kan du tildele de point du har udlovet. Så længe der kun er kommentare, så kan de ikke fordeles. :)
Avatar billede Labrador Nybegynder
12. januar 2011 - 16:06 #15
HEJ IGEN.
JEG KUNNE GODT TÆNKE MIG EN VALIDERING TIL FLG. SCRIPT, SÅDAN AT NÅR EN PERSON VIL TILMELDE SIG OG DER IKKE ER FLERE PLADSER POPPER EN SIDE OP MED " DER ER LUKKET FOR TILMELDING.
HILSEN LABRADOR.
"<!doctype html public "-//W3C//DTD HTML 4.0 //EN">

<html>

    <head>

        <title>Title here!</title>

    </head>
   
    <body>
   
        <form name="svarskema"metod="post" action="svarskema.php">
       
            <p>klasse: <input type="text" name="klasse" size="40" maxlength="40"></p>
            <p>fører: <input type="text" name="driver" size="30" maxlength="30"></p>
            <p>kaldenavn: <input type="text" name="kaldenavn" size="50" maxlength="50"></p>
            <p>race: <input type="text" name="race" size="30" maxlength="30"></p>
            <input type="submit"name="send" value= "Del dine oplysninger med andre">
       
        </form>
       
        <?php
       
            $maxAntal = 1;

            // Skab forbindelse til database her.

            $antal_tilmeldte = mysql_query("SELECT COUNT(*) AS antal FROM svarskema") or die(mysql_error());

            if (mysql_result($antal_tilmeldte,0) > $maxAntal) {
           
                echo "Der er lukket for tilmelding.";
           
            } else {
                   
                // Henter indholdet af formularens felter
                $klasse    = $_REQUEST["klasse"];
                $driver    = $_REQUEST["driver"];
                $kaldenavn = $_REQUEST["kaldenavn"];
                $race      = $_REQUEST["race"];
               
                mysql_query ("INSERT INTO svarskema(katalogNR, klasse, fører, kaldenavn, race) values (0, '$klasse', '$driver', '$kaldenavn', '$race')");

            }
        ?>
       
    </body>
   
</html>
Avatar billede webweaver Praktikant
12. januar 2011 - 16:41 #16
Opret en ny tråd. Denne er lukket :)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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