Avatar billede kthiesen Novice
09. marts 2006 - 16:32 Der er 1 kommentar og
1 løsning

Form input til mysql for output i html

Hej

Jeg tumler lidt med en e-mail søgemaskine til min hjemmeside.

Der er mange brugere - 600+ og de skal kunne søge i databasen efter e-mails.

Efter flytning til server med register_globals=off (godt nok!) har jeg ikke kunne få det til at virke.

Den søger i basen og finder, hvis jeg udfylder det sidste felt den rigtige bruger, ved alle andre siger den at der er fundet 293 brugere, der passer til søgekriteriet... Også når jeg ved der kun skal være en.

Her er koden:

<?php
if (isset($_POST["submit"])) {
    // Forbindelse til databasen oprettes
    include "connect_db.php";
    // Find ud af om der er et felt eller flere der matcher søgekriteriet
//    $foresp=mysql_query("SELECT username, name, surname, email FROM forums_auth WHERE username LIKE '$_POST[personalenummer]' OR name LIKE '$_POST[fornavn]' OR surname LIKE '$_POST[efternavn]' ORDER BY surname, name ASC") or die( mysql_error() );
    $foresp=mysql_query("SELECT username, name, surname, email FROM forums_auth WHERE username LIKE '$_POST[input]' OR name LIKE '$_POST[input]' OR surname LIKE '$_POST[input]' ORDER BY surname, name ASC") or die( mysql_error() );
   
    // Find antallet af hits
    $antal = mysql_num_rows($foresp);
    // Teksten formateres i forhold til antallet af medlemmer   
        if ($antal>1){
            $medlem = "medlemmer";
            }else{
            $medlem = "medlem";
            }
    // Vi printer resultatet
    print "<link rel=stylesheet href=../dpf.css type=text/css><center>&nbsp;<p><table>";
    print "<tr><td colspan=3>Du har valgt at lede efter <b>$_POST[input]</b>, et øjeblik!<p></td></tr>";
    print "<tr><td colspan=3>Der blev fundet $antal $medlem der opfyldte dit kriterie<br>du kan sende en e-mail ved at trykke på linket:<p></td></tr>";
    print "<tr><td align=right width=14%>P-nr: &nbsp;</td><td>Navn:&nbsp;</td><td>E-mail:&nbsp;</td></tr>";
    while($data=mysql_fetch_array($foresp))
    print "<tr><td align=right>$data[username] &nbsp;</td><td>$data[name]&nbsp;$data[surname]</td><td><a href=mailto:$data[email]>$data[email]</a></td></tr>";
    print "</table></center>";
    // post rutinen er slut
    //exit;
}else{ ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>E-mail søgemaskine for Dansk Pilotforening</title>
<meta name="Generator" content="Stone's WebWriter 4">
<link rel=stylesheet href=../dpf.css type=text/css>
</head>
<body>
<center>
<p>
<form action="<?=$_SERVER[php_self]?>" method="post">
<input type=hidden name="seek">
<table>
<tr><td align=center colspan=3><p><h3>Personsøgeren</h3>Søg på:</td></tr>
<tr align=center><td colspan=2 align=right>Input:</td><td align=left><input type=text value="" size=25 name=input></td></tr>
<tr align=center><td colspan=2 align=right>Personalenummer:</td><td align=left><input type=text value="" size=25 name=input></td></tr>
<tr align=center><td colspan=2 align=right>Fornavn:</td><td align=left><input type=text value="" size=25 name=input></td></tr>
<tr align=center><td colspan=2 align=right>Efternavn:</td><td align=left><input type=text value="" size=25 name=input></td></tr>
<tr align=center><td colspan=3><input type=submit value=submit name=submit></td></tr>
</form>
<p>
</table>
</center>
</body>
</html>
<?php } ?>
Avatar billede kthiesen Novice
09. marts 2006 - 16:33 #1
Jeg har i øvrigt forsøgt med forskellige navne til variablerne, det giver samme svar, dog at der er 294 brugere der matcher... ;-()
Avatar billede kthiesen Novice
31. maj 2010 - 07:20 #2
Svar- lukker
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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