Avatar billede lanworld_rippie Nybegynder
12. oktober 2002 - 12:34 Der er 13 kommentarer og
1 løsning

LIdt hjælp til If....

hey alle.. ja nu sidder jeg her og har prøvet at bygge det her script op. men der er fejl. og det kan jeg godt se... men hvad kan jeg gøre for at rette det... mit script ser sådan her ud...

<?
include("connect.inc.php");

$query = mysql_query("SELECT email FROM nyhedsbrev WHERE email='$email'");

$antal = mysql_num_rows($query);

if($antal == 1) {

echo "Beklager. Den indtastede email findes allerede i vores database.";

}

elseif {

if($navn == "") { echo "Du har ikke skrevet dit navn<br>"; }
if($email == "") { echo "Du har ikke skrevet noget email<p>Beklager. Du kan ikke oprettes med flg. oplysninger.<p>Prøv Venligst igen."; }

}

else {

mysql_query("insert into nyhedsbrev (navn,email) values ('$navn','$email')");

echo "Mange tak $navn !!<p>Du er nu oprettet i vores database, og vi vil sende dig et nyhedsbrev så snart vi har noget nyt på hjertet..<p>Med Venlig

Hilsen<br>Team Lanworld Mail Robot.";

}

?>

jeg kan jo ikke bruge den der elseif { for ellers hvad ????

som i kan se skal den ind og tjekke og der allerede findes den email adresse i vores DB og hvis den gør skal den sige STOP... hvis der så ikke er en mail skal den gå ind og tjekke om man i formen nu har skrevet både navn og email ellers sige stop igen. hvis den ikke findes allerede i vores DB og man har tastet rigtigt ind skal den så bare insert det navn og den email i vores DB... men der er ligsom en fejl i det..

håber en kan hjælpe...
12. oktober 2002 - 12:36 #1
elseif($antal == 1) {
Avatar billede lanworld_rippie Nybegynder
12. oktober 2002 - 12:38 #2
den skal jo ikke være 1 der...

så er det vel bare bruge != ik ?
Avatar billede lanworld_rippie Nybegynder
12. oktober 2002 - 12:40 #3
Nu har jeg prøvet sådan her... og når jeg skriver navn og email som ikke findes. så sker der intet... den skriver ikke noget til mig... bare en blank side...

<?
include("connect.inc.php");

$query = mysql_query("SELECT email FROM nyhedsbrev WHERE email='$email'");

$antal = mysql_num_rows($query);

if($antal == 1) {

echo "Beklager. Den indtastede email findes allerede i vores database.";

}

elseif($antal != 1) {

if($navn == "") { echo "Du har ikke skrevet dit navn<br>"; }
if($email == "") { echo "Du har ikke skrevet noget email<p>Beklager. Du kan ikke oprettes med flg. oplysninger.<p>Prøv Venligst igen."; }

}

else {

mysql_query("insert into nyhedsbrev (navn,email) values ('$navn','$email')");

echo "Mange tak $navn !!<p>Du er nu oprettet i vores database, og vi vil sende dig et nyhedsbrev så snart vi har noget nyt på hjertet..<p>Med Venlig

Hilsen<br>Team Lanworld Mail Robot.";

}

?>
Avatar billede bongobride Nybegynder
12. oktober 2002 - 12:44 #4
<?
include("connect.inc.php");

$query = mysql_query("SELECT email FROM nyhedsbrev WHERE email='$email'");

$antal = mysql_num_rows($query);

if($antal == 1) {

echo "Beklager. Den indtastede email findes allerede i vores database."; exit; }

if($navn == "") { echo "Du har ikke skrevet dit navn<br>"; }
if($email == "") { echo "Du har ikke skrevet noget email<p>Beklager. Du kan ikke oprettes med flg. oplysninger.<p>Prøv Venligst igen."; }

}

else {

mysql_query("insert into nyhedsbrev (navn,email) values ('$navn','$email')");

echo "Mange tak $navn !!<p>Du er nu oprettet i vores database, og vi vil sende dig et nyhedsbrev så snart vi har noget nyt på hjertet..<p>Med Venlig

Hilsen<br>Team Lanworld Mail Robot.";

}

?>
12. oktober 2002 - 12:45 #5
nej måske ikke?

men den skal løbe to if-sætninger igennem, er de begge sande skal den gøre *et eller andet*

$kat = "dyr";
if($kat == "menneske") {
$wrong = "yes";
}
elseif($kat == "maskine") {
$wrong = "yes";
}
else {
$wrong = "no - en kat er et dyr";
}
echo $wrong;

?
12. oktober 2002 - 12:45 #6
"er de begge ikke sande "
Avatar billede bongobride Nybegynder
12. oktober 2002 - 12:46 #7
hovsa ...

<?
include("connect.inc.php");

$query = mysql_query("SELECT email FROM nyhedsbrev WHERE email='$email'");

$antal = mysql_num_rows($query);

if($antal == 1) {

echo "Beklager. Den indtastede email findes allerede i vores database."; exit; }

if($navn == "") { echo "Du har ikke skrevet dit navn<br>"; }
if($email == "") { echo "Du har ikke skrevet noget email<p>Beklager. Du kan ikke oprettes med flg. oplysninger.<p>Prøv Venligst igen.";
} else {

mysql_query("insert into nyhedsbrev (navn,email) values ('$navn','$email')");

echo "Mange tak $navn !!<p>Du er nu oprettet i vores database, og vi vil sende dig et nyhedsbrev så snart vi har noget nyt på hjertet..<p>Med Venlig

Hilsen<br>Team Lanworld Mail Robot.";

}

?>
Avatar billede lanworld_rippie Nybegynder
12. oktober 2002 - 12:48 #8
bongobride.. jeg har prøvet den metode.. men siden er included.. så hvis jeg laver en exit; så stopper den resten af siden... det ser lidt ufedt ud...
Avatar billede lanworld_rippie Nybegynder
12. oktober 2002 - 12:50 #9
som i kan se. skal den jo tjekke om den email allerede findes. findes den skal den jo stoppe det. hvis emailen ik findes skal den gøre noget andet. og inde i den skal den så tjekke om man har skrevet navn og email ellers sige fejl... og hvis der ingen email er og begge er skrevet skal den bare lave den insert
Avatar billede bongobride Nybegynder
12. oktober 2002 - 12:51 #10
Så er det vel bare således:

<?
include("connect.inc.php");

$query = mysql_query("SELECT email FROM nyhedsbrev WHERE email='$email'");

$antal = mysql_num_rows($query);

if($antal == 1) {

echo "Beklager. Den indtastede email findes allerede i vores database."; }

if($navn == "") { echo "Du har ikke skrevet dit navn<br>"; }
if($email == "") { echo "Du har ikke skrevet noget email<p>Beklager. Du kan ikke oprettes med flg. oplysninger.<p>Prøv Venligst igen.";
}
if($antal !== 1) {

mysql_query("insert into nyhedsbrev (navn,email) values ('$navn','$email')");

echo "Mange tak $navn !!<p>Du er nu oprettet i vores database, og vi vil sende dig et nyhedsbrev så snart vi har noget nyt på hjertet..<p>Med Venlig

Hilsen<br>Team Lanworld Mail Robot.";

}

?>
Avatar billede smooth Nybegynder
12. oktober 2002 - 12:54 #11
<?
if($_POST[email]){
include("connect.inc.php");

$query = mysql_query("SELECT email FROM nyhedsbrev WHERE email='$email'");

$antal = mysql_num_rows($query);

if($antal == 1) {
echo "Beklager. Den indtastede email findes allerede i vores database.";
}
if(empty($navn)) {
echo "Du har ikke skrevet dit navn<br>";
}

if(empty($email)){
echo "Du har ikke skrevet noget email<p>Beklager. Du kan ikke oprettes med flg. oplysninger.<p>Prøv Venligst igen.";
}

}

else {
mysql_query("insert into nyhedsbrev (navn,email) values ('$navn','$email')");

echo "Mange tak $navn !!<p>Du er nu oprettet i vores database, og vi vil sende dig et nyhedsbrev så snart vi har noget nyt på hjertet..<p>Med Venlig

Hilsen<br>Team Lanworld Mail Robot.";

}

?>
Avatar billede jakoba Nybegynder
12. oktober 2002 - 12:55 #12
elseif er en forkortelse. det betyder præcis det samme om at sige else if

så prøv at skrive din sidste med korrekte indrykninger:

<?
include("connect.inc.php");

$query = mysql_query("SELECT email FROM nyhedsbrev WHERE email='$email'")
    or die(mysql_error());

$antal = mysql_num_rows($query);

if($antal == 1) {  // når $antal ligme 1

    echo "Beklager. Den indtastede email findes allerede i vores database.";

}
else {            // når $antal ikke ligmed 1
    if($antal != 1) {    // altid sandt eller ville vi ikke være her

        if($navn == "") {
            echo "Du har ikke skrevet dit navn<br>";
        }
        if($email == "") {
            echo "Du har ikke skrevet noget email<p>Beklager. Du kan ikke oprettes med flg. oplysninger.<p>Prøv Venligst igen.";
        }

    }
    else {  // så denne bliver aldrig udført

        mysql_query("insert into nyhedsbrev (navn,email) values ('$navn','$email')");

        echo "Mange tak $navn !!<p>Du er nu oprettet i vores database, og vi vil sende dig et nyhedsbrev så snart vi har noget nyt på hjertet..<p>Med Venlig Hilsen<br>Team Lanworld Mail Robot.";
    }
}
?>

jeg tror du mener:

<?
include("connect.inc.php");

$query = mysql_query("SELECT email FROM nyhedsbrev WHERE email='$email'")
    or die(mysql_error());

$antal = mysql_num_rows($query);

if($antal >= 1) {  // når $antal ligme 1
    echo "Beklager. Den indtastede email findes allerede i vores database.";

}
else {            // han findes ikke i forvejen
    if( $navn == "" || $email == "" ) {    // er data ugyldge ?
            // ja. udskriv fejlmelinger for forkert udfyldte felter
        if($navn == "") {
            echo "Du har ikke skrevet dit navn<br>";
        }
        if($email == "") {
            echo "Du har ikke skrevet noget email<p>Beklager. Du kan ikke oprettes med flg. oplysninger.<p>Prøv Venligst igen.";
        }

    }
    else {  // Nej. data er gyldige.  så brug dem

        mysql_query("insert into nyhedsbrev (navn,email) values ('$navn','$email')");

        echo "Mange tak $navn !!<p>Du er nu oprettet i vores database, og vi vil sende dig et nyhedsbrev så snart vi har noget nyt på hjertet..<p>Med Venlig Hilsen<br>Team Lanworld Mail Robot.";
    }
}
?>

mvh JakobA
Avatar billede lanworld_rippie Nybegynder
12. oktober 2002 - 13:00 #13
Mange tak jakoba... gider du lige lave et svar så jeg kan give dig point ?
Avatar billede jakoba Nybegynder
12. oktober 2002 - 13:02 #14
ok
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

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