• 28.04.2024, 18:57
  • Registrieren
  • Anmelden
  • Sie sind nicht angemeldet.

 

Mysql Suchabfrage -> *fixed* @ admin plz close

Samstag, 22. Januar 2005, 17:59

Moin,

Ich bin grad dabei ein script für meine Schule zu schreiben,
wo man sich als Ehemaliger eintragen kann und andere auf der Seite können dann ander nach Ehemaligen suchen.

Das Script läuft soweit auch, allerdings Sagt er mir zb. wenn ich
nach Jahrgang 200x suche,dass er 2 Ergebnisse gefunden hat
(sind auch erst 2 Einträge in der Datenbank ;)) aber er gibt
mir nur eins aus ...

Wie kann man das ändern ?

Code der Abfrage :

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<?
echo "<div align=\"center\">\n";
?>
<?
include "cfg/mySQL_conf.php";

      error_reporting(E_ALL);
      
      @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR 
                              die("Keine Verbindung zur Datenbank. Fehlermeldung:".mysql_error());

      mysql_select_db(MYSQL_DATABASE) OR 
                              die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());

$sql = "SELECT
                  vorname,
                  nachname,
                  email,
                  jahrgang,
                  option1,
                  option2,
                  strasse,
                  plz,
                  ort
                  
       FROM 
                     ehemalige
         WHERE
                  $_POST[select] LIKE '%$_POST[suche]%'
       ORDER by vorname ASC";
   
      $suche = mysql_query($sql) OR die(mysql_error());

echo "<table width=\"460\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n";
echo "  <tr>\n";
echo "    <td colspan=\"2\"><div align=\"center\"><strong>".mysql_num_rows($suche)."</strong> Übereinstimmung(en) gefunden!</div></td>\n";
echo "  </tr>\n";
echo "</table>\n";
            while($suche = mysql_fetch_assoc($suche)) {

echo "<br>\n";
echo "<table width=\"460\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n";
echo "  <tr>\n";
echo "    <td width=\"230\">Vorname</td>\n";
echo "    <td width=\"230\">".$suche['vorname']."</td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td>Nachname</td>\n";
echo "    <td>".$suche['nachname']."</td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td>Abi-Jahrgang</td>\n";
echo "    <td>".$suche['jahrgang']."</td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td colspan=\"2\"></td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td colspan=\"2\"></td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td colspan=\"2\"></td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td colspan=\"2\"><div align=\"center\"><br>\n";
echo "    </div></td>\n";
echo "  </tr>\n";
echo "</table>\n";
 if($suche['option1'] == "Ja") {
 
echo "<table width=\"460\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n";
echo "  <tr>\n";
echo "    <td>Straße</td>\n";
echo "    <td>".$suche['strasse']."</td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td>Postleitzahl</td>\n";
echo "    <td>".$suche['plz']."</td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td>Ort</td>\n";
echo "    <td>".$suche['ort']."</td>\n";
echo "  </tr>\n";
echo "  <tr>\n";
echo "    <td colspan=\"2\"><div align=\"center\">    </div></td>\n";
echo "  </tr>\n";
echo "</table>\n";
}
else {

echo "<div align\=center\">Addresse wird auf Wunsch des Benutzers nicht angezeigt</div>\n";
}
 if($suche['option2'] == "Ja") {
 
echo "<div align\=center\"><a href=\"mailto:".$suche['email']."\">Dem Benutzer eine Email schicken.</a></div>\n";
}
else {

echo "<div align\=center\">Email wird auf Wunsch des Benutzers nicht angezeigt</div>\n";
}
}
?>
<?
echo "</div>\n";
?>


MfG TrOuble

Re: Mysql Suchabfrage -> 2 Ergebnisse 1 Angezei

Samstag, 22. Januar 2005, 18:31

Ok sorry dummer fehler gewesen den ich grad selbst gefunden habe ...

Quellcode

1
while($suche = mysql_fetch_assoc($suche)) {


muss natürlich heißen :

Quellcode

1
while($ergebnis = mysql_fetch_assoc($suche)) {


Und dann bei der Datenausgabe dann auch

Quellcode

1
$ergebnis['...']

und nicht $suche

...

Sorry nochmall

@Admin Plz Close !

Thx & MfG TrOuble

Re: Mysql Suchabfrage -> *fixed* @ admin plz cl

Samstag, 22. Januar 2005, 19:21

das kommt davon, wenn man sich auf die bekloppten php-funktionen verlässt und keine wrapperklasse hat. ich werde mich mal daran machen, meine zu veröffentlichen. dann ists in zukunft auch einfacher, code-beispiele zu bringen :)

Re: Mysql Suchabfrage -> *fixed* @ admin plz cl

Sonntag, 23. Januar 2005, 04:08

Zitat von »Y0Gi«

das kommt davon, wenn man sich auf die bekloppten php-funktionen verlässt und keine wrapperklasse hat. ich werde mich mal daran machen, meine zu veröffentlichen. dann ists in zukunft auch einfacher, code-beispiele zu bringen :)

Moin,

Könntest du mal hier/per ICQ mir erklären was du damit gemeint hast und wie ich sowas zukünftig verbssern könnte ...?

Würd mich nämlich gern auf diesem Gebiet weiterbilden ;)

MfG TrOuble