Gå til innhold

Hjelp med if (empty) koden og BBKoder


Anbefalte innlegg

Har nå laget en ganske simpel søkemotor, men det er et problem...hvis personen ikke fyller ut noe i inputen, så får man opp alt som står i database (den spesifiserte tabellen mener jeg). Dette vil jeg ikke at skal skje, men i stedet for vil jeg at man bare får en beskjed om at man må fylle ut alle feltene. (*online demo*

 

 

Her er koden jeg bruker:

<form action="" method="POST">
<h1>SØK</h1>
<input type="text" name="check" />
<input type="submit" name="submit" value="Search" />
</form>

</div>

<?php
$con = mysql_connect("localhost","brukernavn","passord");
if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }
mysql_select_db("db_navn", $con);

if (isset($_POST[submit])) {
$check = $_POST['check'];
echo "You searched for: {$check} <br />";
echo "<br />";
echo "<br />";
echo "<b>You got";
$result = mysql_query("SELECT * FROM nyheter_1 WHERE tittel LIKE '%$check%'");
echo " " . mysql_num_rows($result) . " result(s).</b>";
while ($row = mysql_fetch_array($result)) {
echo "<br />";
echo "<h3>";
echo "<a href=\"$row[id].php\"><i>".$row['tittel']."</i></a>";
echo "</h3>";
}

if (empty($check)) {
echo "Fyll ut alle feltene!";
// Hvis man ikke fyller ut, kommer alt som står i tabellen + denne teksten og jeg
// vil bare ha denne teksten ut hvis man ikke har fylt ut noe. Noen som kan hjelpe?
}

}
?>

</div>

 

 

Edit: la på mer på tittelen:

 

Jeg skulle gjerne gjort slik at den stripper tags fra gjesteboka mi for ellers blir ikke sida mi valid XHTML mer. Men når jeg bruker den koden jeg har nå og legger på strip tags, så fungerer ikke f. eks <span style='font-size: 16pt'>tekst</span> hvis de har valgt å ha stor skriftstørrelse. Koden jeg har:

 

<?php
$con = mysql_connect("localhost","brukernavn","passord");
if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }
mysql_select_db("database_navn", $con);

function bbcode($tekst) {

$tekst = str_replace("\n", "<br />", $tekst);

$tekst = str_replace("[url]", "<a target='newframe' href=", $tekst);
$tekst = str_replace("[*url]", ">", $tekst);
$tekst = str_replace("[/url]", "</a>", $tekst);

$tekst = str_replace("[size=1]", "<span style='font-size: 6pt;'>", $tekst);
$tekst = str_replace("[size=2]", "<span style='font-size: 8pt;'>", $tekst);
$tekst = str_replace("[size=3]", "<span style='font-size: 10pt;'>", $tekst);
$tekst = str_replace("[size=4]", "<span style='font-size: 12pt;'>", $tekst);
$tekst = str_replace("[/size]", "</span>", $tekst);



// Når jeg putter inn denne koden også, så vil ikke de over fungere for da blir det vist som < > sånn som her på forumet. Noen som kan fikse noe?
$tekst = str_replace("<", "<" ,$tekst);
$tekst = str_replace(">", ">" ,$tekst);
$tekst = str_replace("&", "&" ,$tekst);


return $tekst;

}

$result = mysql_query("SELECT * FROM comments ORDER BY `id` DESC LIMIT 0, 10");

 echo "<div style='width: 600px; margin: 0 auto; text-align: left;'>";

while($row = mysql_fetch_array($result))
 {
 echo "<div style='background-color: transparent; background-image: url(images/S.jpg);'>";
 echo "<p style='padding: 15px;'>";
 echo "<span style='background-color: #DFDFDF;'>";
 echo "<em>";
 echo " Written by ";
 echo "<a href='mailto:$row[epost]'>$row[navn]</a> ";
 echo "</em>";
 echo "</span>";
 echo "<br />";
 echo "<br />";
 echo "".bbcode($row[innhold])."";
 echo "</p>";
 echo "<p>";
 echo " ";
 echo "</p>";
 echo "</div>";
 echo "<br />";
 }

 echo "</div>";

mysql_close($con);
?>

Endret av Andy-Pandy
Lenke til kommentar
Videoannonse
Annonse

if (empty($check)) {

die('Fyll ut alle feltene!');

 

}

Kan du bare sette inn rett etter

$check = $_POST['check'];

og den stopper der.

 

ELLER SÅ KAN DU:

 

Etter $check = ¤_POST['check'];

sette

 

if(!empty($check)) {

foran alt innholdet ditt, og sette else til slutt med echo "Fyll ut alle feltene!";

Endret av Met_Fredrik
Lenke til kommentar

isset($_POST['submit'])

 

^^ den der vil ikke funke i alltid, er en av nettleserene, tror det er IE, som ikke sender verdien på submitknappen hvis du trykker på Enter i søkefeltet.

 

 

Når det gjelder å lære seg php, så anbefaler jeg å lese igjennom funksjonsbeskrivelsene på følgende:

 

http://no2.php.net/strings

http://no2.php.net/mysql

http://no2.php.net/array

 

Da lærer du vanvittig mye. Iallefall sånn jeg lærte meg php :p

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å
×
×
  • Opprett ny...