Gå til innhold

If setning med tre valg


Anbefalte innlegg

Skrevet

Hei.

 

Jeg sliter litt med å få til en if-kode.

Første IF:

 

Sjekke om alle variablene på index.php er fyllt ut. hvis ikke gi beskjed om dette.

 

Andre IF:

 

Hvis $fnavntilstede leverer tallet 1, så skal det kun postes verdiene.

 

Trede IF:

 

Hvis $fnavntilstede leverer tallet 0, (noe som betyr at navnet ikke finnes fra før i databasen), så skrives det til databasen.

 

Koden for å finne ut om navnet allerede finnes i databasen stemmer. Den returnerer riktig.

 

Allikavell skrives ingenting til databasen.

Noen som kan hjelpe meg?

 

Spør meg gjerne om noe er uklart.

 

Tusen takk!!!

 

<?
$conn=mysql_connect("localhost","brukernavn","passord");
mysql_select_db("sommerleir",$conn);
$res=mysql_query("SELECT * FROM kontakt WHERE fnavn LIKE '$fnavn'",$conn);
mysql_close($conn);
$fnavntilstede=mysql_num_rows($res);

if ($fnavn == "" or $adresse == "" or $postnr == "" or $poststed == "" or $tlfmor == "" or $epost == ""){
	echo "Du må fylle ut hele skjemaet.";}
elseif ($fnavntilstede=1){
$kk=$_POST['klubb'];
$fnavn=$_POST['fnavn'];
$fadresse=$_POST['adresse'];
$fpostnr=$_POST['postnr'];
$fpoststed=$_POST['poststed'];
$fepost=$_POST['epost'];
$ftlfmor=$_POST['tlfmor'];
$ftlffar=$_POST['tlffar'];}
elseif ($fnavntilstede=0){
	$kk=$_POST['klubb'];
	$fnavn=$_POST['fnavn'];
	$fadresse=$_POST['adresse'];
	$fpostnr=$_POST['postnr'];
	$fpoststed=$_POST['poststed'];
	$fepost=$_POST['epost'];
	$ftlfmor=$_POST['tlfmor'];
	$ftlffar=$_POST['tlffar'];
	$conn=mysql_connect("localhost","brukernavn","passord");
	mysql_select_db("sommerleir",$conn);
	$res=mysql_query("INSERT INTO kontakt VALUES(NULL,'$kk','$fnavn','$fadresse','$fpostnr','$fpoststed','$fepost','$ftlfmor','$ftlffar',NULL)");
	mysql_close($conn);}
?>

Videoannonse
Annonse
Skrevet

I if-uttrykket ditt skriver du fnavntilstede=1. Det du gjør er der ikke å sjekke om variabelen er 1, men å tilegne variabelen verdien 1.

 

Lykke til :)

Skrevet (endret)

Her er siste versjon, med noen endringer:

 

<?
$conn=mysql_connect("localhost","root","");
mysql_select_db("sommerleir",$conn);
$res=mysql_query("SELECT * FROM kontakt WHERE epost LIKE '$epost'",$conn);
mysql_close($conn);
$eposttilstede=mysql_num_rows($res);
echo $eposttilstede;
?>

<?
if ($fnavn == "" or $adresse == "" or $postnr == "" or $poststed == "" or $tlfmor == "" or $epost == ""){
	echo "Du må fylle ut hele skjemaet.";}
elseif ($eposttilstede == 0){
	$kk=$_POST['klubb'];
	$fnavn=$_POST['fnavn'];
	$fadresse=$_POST['adresse'];
	$fpostnr=$_POST['postnr'];
	$fpoststed=$_POST['poststed'];
	$fepost=$_POST['epost'];
	$ftlfmor=$_POST['tlfmor'];
	$ftlffar=$_POST['tlffar'];}
elseif ($eposttilstede == 1){
	$kk=$_POST['klubb'];
	$fnavn=$_POST['fnavn'];
	$fadresse=$_POST['adresse'];
	$fpostnr=$_POST['postnr'];
	$fpoststed=$_POST['poststed'];
	$fepost=$_POST['epost'];
	$ftlfmor=$_POST['tlfmor'];
	$ftlffar=$_POST['tlffar'];
	$conn=mysql_connect("localhost","root","");
	mysql_select_db("sommerleir",$conn);
	$res=mysql_query("INSERT INTO kontakt VALUES(NULL,'$kk','$fnavn','$fadresse','$fpostnr','$fpoststed','$fepost','$ftlfmor','$ftlffar',NULL)");
	mysql_close($conn);}
else{
	echo $eposttilstede;
?>

 

Har endret det til epost istedenfor navn, men det fungerer ikke om eposttilstede er 0 eller 1. men om eposttilstede er 2 så vises siden. Hvis jeg setter if-setning 2 til => 0 så fungerer det ikke i hele tatt.

Endret av Errae
Skrevet

Får du noen feilmeldinger, eller blir siden bare blank? Mistenker at det har noe med måten variabelen $eposttilstede blir definert...

 

Og, bare litt ekstra pirk: Det er mye mer praktisk å bruke !isset($variabel) enn $variabel == "". Prøv det :)

Skrevet

Det finnes et eget PHP forum for denne typen spørsmål! Dette forumet holder på å drukne i PHP-relaterte problemstillinger, og så lenge det finnes et mer egnet forum for slike ting tillater jeg meg å påpeke dette.

 

Finnes det ikke en moderator i dette forumet?

 

Werner

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...