Gå til innhold

exit(); ? Slutten av siden forsvinner.


Anbefalte innlegg

Har laget en side.

 

Har et "legg til nyhet" script. Men når noe er feil..

Som for eksempel at jeg har glemt å skrive inn tittelen.

 

Da skal scriptet stoppe.. Altså exit(); eller die("Du har ikke tittel").

 

Men da stopper ikke bare scriptet men også slutten av siden forsvinner.

 

Hvordan kan jeg gjøre at det kun er scriptet som stopper i å sende tomme felt i databasen.

 

 

Her er bilder av hva som skjer:

 

Før jeg klikker send:

bilde18dv.jpg

 

Etter at jeg klikker send:

bilde28xh.jpg

 

Edit: det som skjer er at Copyright og teller forsvinner :hmm:

Endret av Mellet
Lenke til kommentar
Videoannonse
Annonse

Når du kaller exit(); vil lasting av siden stoppe. Derfor forvinner slutten av siden.

Du bør heller bruke en liten if-setning..

 

Noe som f.eks.:

if($navn == null || $tittel == null || $nyhet == null) {
print("Du glemte et felt);
} else {
kjør spørring!
}

Lenke til kommentar
Når du kaller exit(); vil lasting av siden stoppe. Derfor forvinner slutten av siden.

Du bør heller bruke en liten if-setning..

 

Noe som f.eks.:

if($navn == null || $tittel == null || $nyhet == null) {
print("Du glemte et felt);
} else {
kjør spørring!
}

det burde fikse problemet eller du kan fjerne exit().

Lenke til kommentar
Når du kaller exit(); vil lasting av siden stoppe. Derfor forvinner slutten av siden.

Du bør heller bruke en liten if-setning..

 

Noe som f.eks.:

if($navn == null || $tittel == null || $nyhet == null) {
print("Du glemte et felt);
} else {
kjør spørring!
}

det burde fikse problemet eller du kan fjerne exit().

Nope, viss jeg fjerner exit(); blir nyheten sendt inn uansett om noen felt er tomme :/..

Lenke til kommentar
Når du kaller exit(); vil lasting av siden stoppe. Derfor forvinner slutten av siden.

Du bør heller bruke en liten if-setning..

 

Noe som f.eks.:

if($navn == null || $tittel == null || $nyhet == null) {
print("Du glemte et felt);
} else {
kjør spørring!
}

det burde fikse problemet eller du kan fjerne exit().

Nope, viss jeg fjerner exit(); blir nyheten sendt inn uansett om noen felt er tomme :/..

ok, kan du poste scriptet ditt?

Lenke til kommentar
Når du kaller exit(); vil lasting av siden stoppe. Derfor forvinner slutten av siden.

Du bør heller bruke en liten if-setning..

 

Noe som f.eks.:

if($navn == null || $tittel == null || $nyhet == null) {
print("Du glemte et felt);
} else {
kjør spørring!
}

Har en liten ide :)

 

Hva om jeg først sjekker om hvert enkelt felt er fylt ut.

 

Da vises d en feil melding for hver felt som ikke ble fylt ut.

 

Deretter sjekker den bare en gang om alle felt er fylt ut..

Da bruker jeg din..

 

Så om noe er galt vil ikke Sett inn Scriptet bli startet men feilmeldingen vil fortsatt vises uten at jeg trenger exit();

 

 

Skal teste dette :dribble:

 

hehe, noen som forsto hva jeg mente :nei:

Blei litt sånn blabla, blabla, blabla ;)

Men jaja, jeg sjønte d :w00t:

 

 

Edit:

Skal poste ut scriptet om det funker ;)

Endret av Mellet
Lenke til kommentar

Her er scriptet: (Alt funker fint hos meg)

 


<?php
if($_SESSION['brukernavn'] && $_SESSION['passord']) {

if($_POST['tittel'] == null)
{print("<span class=underskrift>Nyheten må ha en tittel.</span><br>"); include ("addnyhet.php");}

elseif($_POST['av'] == null)
{print("<span class=underskrift>Du har ikke skrevet hvem som er forfatter av nyhet.</span><br>"); include ("addnyhet.php");}

elseif($_POST['ingress'] == null)
{print("<span class=underskrift>Nyheten må ha en ingress.</span><br>"); include ("addnyhet.php");}

elseif($_POST['nyhet'] == null)
{print("<span class=underskrift>Du har ikke skrevet selve nyheten.</span><br>"); include ("addnyhet.php");}

elseif($_FILES['bilde'] == null)
{print("<span class=underskrift>Du har ikke lastet opp noe bilde ennå.</span><br>"); include ("addnyhet.php");}

else
{

//Bilde Upload

function fileAccept($test)
{
$fileAccept = array('image/png', 'image/xpng', 'image/jpg', 'image/jpeg', 'image/pjpeg', 'image/gif');

if(!in_array($_FILES['bilde']['type'], $fileAccept))
return false;
}


$fileAccept = array('image/png', 'image/xpng', 'image/jpg', 'image/jpeg', 'image/pjpeg', 'image/gif');
$filePath = 'govat/'; 
$thumbPercent = 25;
$createThumb = false;


if(is_uploaded_file($_FILES['bilde']['tmp_name']) && $_FILES['bilde']['error'] == 0)
{
if(in_array($_FILES['bilde']['type'], $fileAccept))
{
if($_FILES['bilde']['type'] == 'image/png' || $_FILES['bilde']['type'] == 'image/xpng')
{ $fileExt = '.png'; }

elseif($_FILES['bilde']['type'] == 'image/jpg' || $_FILES['bilde']['type'] == 'image/jpeg' || $_FILES['bilde']['type'] == 'image/pjpeg')
{$fileExt = '.jpg';}

elseif($_FILES['bilde']['type'] == 'image/gif')
{$fileExt = '.gif';}

$fileName = str_replace($fileExt, '', $_FILES['bilde']['name']);
$fileThumb = $fileName .'_thumb';
$fileSize = getimagesize($_FILES['bilde']['tmp_name']);

if(!is_file($filePath . $fileName . $fileExt))
{
if(!copy($_FILES['bilde']['tmp_name'], $filePath . $fileName . $fileExt))
{ echo '<span class=underskrift>Kunne ikke flytte bilde til mappen</span> '. $filePath;
 unlink($_FILES['bilde']['tmp_name']); }
else
{
if($createThumb)
{
if($_FILES['bilde']['type'] == 'image/png' || $_FILES['bilde']['type'] == 'image/xpng')
{ $moveImage = imagecreatefrompng($filePath . $fileName . $fileExt); }

elseif($_FILES['bilde']['type'] == 'image/jpg' || $_FILES['bilde']['type'] == 'image/jpeg' || $_FILES['bilde']['type'] == 'image/pjpeg')
{ $moveImage = imagecreatefromjpeg($filePath . $fileName . $fileExt); }

elseif($_FILES['bilde']['type'] == 'image/gif')
{ $moveImage = imagecreatefromgif($filePath . $fileName . $fileExt); }

$thumbImage = imagecreatetruecolor(($fileSize[0] / 100) * $thumbPercent, ($fileSize[1] / 100) * $thumbPercent);
             imagecopyresampled($thumbImage, $moveImage,
             0, 0, 0, 0,
             ($fileSize[0] / 100) * $thumbPercent, ($fileSize[1] / 100) * $thumbPercent, $fileSize[0], $fileSize[1]);

if($_FILES['bilde']['type'] == 'image/png' || $_FILES['bilde']['type'] == 'image/xpng')
{ imagepng($thumbImage, $filePath . $fileThumb . $fileExt); }

elseif($_FILES['bilde']['type'] == 'image/jpg' || $_FILES['bilde']['type'] == 'image/jpeg' || $_FILES['bilde']['type'] == 'image/pjpeg')
{ imagejpeg($thumbImage, $filePath . $fileThumb . $fileExt); }

elseif($_FILES['bilde']['type'] == 'image/gif')
{ imagegif($thumbImage, $filePath . $fileThumb . $fileExt); }

imagedestroy($moveImage);
imagedestroy($thumbImage);
}
echo ("<span class=underskrift>Bildet er ferdig lastet opp.</span><br>");
}
}

else
{ echo ("<span class=underskrift>Bilde finnes allerede.</span><br>");  }  

}
else
{ echo $_FILES['bilde']['type'] .'<br>';
 echo ("<span class=underskrift>Desverre, dette er en ugyldig bildetype.</span><br>"); }
}
else
{ switch($_FILES['bilde']['error'])
{
   case 0:
     echo "<span class=underskrift>Noe galt med bilde, prøv igjen.</span><br>";
   break;
   case 1:
     echo "<span class=underskrift>Bilde er for stort. (php.ini)</span><br>";
   break;
   case 2:
     echo "<span class=underskrift>Bilde er for stort.</span><br>";
   break;
   case 3:
     echo "<span class=underskrift>Bilde ble bare delvis lastet opp.</span><br>";
   break;
   case 4:
     echo "<span class=underskrift>Ingen bilde ble lastet opp.</span><br>";
   break;
   case 6:
     echo "<span class=underskrift>Fant ikke mappen til bilde.</span><br>";
   break;
   default:
     echo "<span class=underskrift>Kontakt Web Ansvarlig. Bilde ble ikke lastet opp.</span><br>";
   break;
 }
 }
//Slutt

$tittel = ($_POST['tittel']);
$ingress = ($_POST['ingress']);
$nyhet = ($_POST['nyhet']);
$av = ($_POST['av']);
$bilde = ($fileName . $fileExt);

$nyhet = @mysql_query ("INSERT INTO `nyheter` (`id`, `tittel`, `ingress`, `nyhet`, `forfatter`, `bilde`, `dato`) VALUES ('', '$tittel', '$ingress', '$nyhet', '$av', '$bilde', CURDATE())");

if(@mysql_affected_rows($info) == "0")

{ echo("<span class=underskrift>Det oppstå en feil når nyheten ble lagt til databasen.</span><br>"); include("addnyhet.php");} 

else 

{ echo("<span class=underskrift>Nyheten er nå lagt til.</span><br>"); include("addnyhet.php");}

}}
else
{ echo ("<span class=underskrift>Du må være logget inn.</span><br>"); include("logginn.php"); }

?>

PS: Denne sjekker om SESSION er lagt til for å se om jeg er logget inn.

Scriptet er så langt fordi dette scriptet legger til et bilde til nyheten også.

<span class=underskrift> kan fjernes :) Men jeg bruker CSS for å få en fin rød error tekst :whistle:

 

Edit: Endret hele scriptet:)

Endret av Mellet
Lenke til kommentar
Har en liten ide :)

 

Hva om jeg først sjekker om hvert enkelt felt er fylt ut.

 

Da vises d en feil melding for hver felt som ikke ble fylt ut.

 

Deretter sjekker den bare en gang om alle felt er fylt ut..

Da bruker jeg din..

 

Så om noe er galt vil ikke Sett inn Scriptet bli startet men feilmeldingen vil fortsatt vises uten at jeg trenger exit();

 

 

Skal teste dette :dribble:

 

hehe, noen som forsto hva jeg mente :nei:

Blei litt sånn blabla, blabla, blabla ;)

Men jaja, jeg sjønte d :w00t:

 

Du trenger ikke teste flere ganger...:

if($navn == null) {
print("Du mangler navn");
} elseif($nyhet == null) {
print("du må skrive en nyhet");
} elseif($tittel == null) {
print("Du må skrive en tittel");
} else {
kjør spørring!!!
}

 

Da vil den kun kjøre spørringen dersom alle feltene er fylt ut.

Lenke til kommentar
Du trenger ikke teste flere ganger...:

if($navn == null) {
print("Du mangler navn");
} elseif($nyhet == null) {
print("du må skrive en nyhet");
} elseif($tittel == null) {
print("Du må skrive en tittel");
} else {
kjør spørring!!!
}

 

Da vil den kun kjøre spørringen dersom alle feltene er fylt ut.

OoooooOOoo.. :ermm:

 

har aldri skjønt meg helt på elseif :tease:

 

Men det var jo fint!;D

 

Da kan jeg bruke d :thumbup:

 

Edit: Den eneste ulempen nå er at alle feil ikke vises på en gang..:)

Endret av Mellet
Lenke til kommentar

du kan sjekke om feltene er fylt inn slik:

 

if (!($name) || !($nyhet) || !($tittel)) {
  echo 'ett eller flere felt mangler<br>';
     if (!$name) {
        echo 'navn mangler<br>';
     }
     if (!$nyhet) {
        echo 'nyhet mangler<br>';
     }
     if (!$tittel) {
        echo 'tittel manlger';
     }
}else{
din spørrring
}

 

da vil du få opp de feltene som mangler samtidig, istedet for ett og ett felt.

Lenke til kommentar

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...