Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 20

Thema: Website mit MySQL

  1. #1
    Azubi(ne)
    Registriert seit
    05.06.2008
    Beiträge
    71
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Website mit MySQL

    Hallo,

    hier ist mein erster Versuch einer Website mit MySQL.
    Der komplette Inhalt für diese html wird aus der DB bezogen. Die Abfrage erfolgt über einen Query String: bei Eingabe von

    meineWebsite.php?wahl=1

    wird der Inhalt für den 1. Projekteintrag abgefargt und angezeigt. wahl=2 ergibt die Abfarge für den 2. Datensatz usw.
    Ich habe dafür folgende if Schleife verwendet:
    PHP-Code:
    if ($_GET['wahl'] == $row['nummer']) 
    Soweit funktioniert es ganz gut. Seht ihr Bedenken in dieser Umsetzung oder ist das so ok?
    Wenn man nur meineWebsite.php aufruft, wird nichts angezeit. Es wäre gut, wenn hier eine Meldung kommen würde.

    HTML-Code:
    <html>
      <head>
         <title>Projekte</title>
      </head>
      <body >
        <center>
            <h2>+++ Projekte +++</h2>
        </center>
     
     <?php
     
     while($row = mysql_fetch_assoc($Ergebnis))
     {
     
      if ($_GET['wahl'] == $row['nummer']) 
      {
      echo "ID:" . $row['id']; //Kontrolle
     ?>  
     
        <table align="center" width="80%" border="1" bordercolordark="1"  cellpadding="0" cellspacing="2">
         <tr>
      <td colspan="2" >&Uuml;berschrift:<br> <h1><?php echo $row['name']; ?></h1></td>
     </tr>
     <tr>
      <td>Kategorie:<br> <?php include $row['gruppe']; ?></td>
      <td>Projektnummer (sortiert nach Projektnummer):<br> <?php echo $row['nummer']; ?></td>
         </tr>
         <tr>
          <td>Bild:<br>
       <img src="img/<?php echo $row['bild']; ?>" alt="" border="0" width="100" > 
       </td>
          <td>Textteil:<br><?php echo $row['text']; ?></td>
         </tr>
        </table>
     
     <?php  
      }
     }
     ?>
     
      </body>
    </html>
    PHP-Code:
    <?php
     
    include 'function.php';
     
     
    $nummer   $_POST['nummer'];
     
    $name    $_POST['name'];
     
    $gruppe   $_POST['gruppe'];
     
    $text    $_POST['text'];
     
    $bild    $_POST['bild'];
     
    $Ergebnis AbfrageProjekt$id$nummer$name$gruppe$text$bild ); 
     include 
    "Test-AusgabeDB.html";
     
    //--------------------------------------------------------------------------- 
    function AbfrageProjekt$id$nummer$name$gruppe$text$bild )
    {
     
    $Verbindung VerbindungHerstellen(); 
     
     
    $Abfrage "SELECT id, nummer, name, gruppe, text, bild FROM links ORDER BY nummer";
     
    $Ergebnis mysql_query($Abfrage$Verbindung);
     
     return 
    $Ergebnis;
    }
     
    ?>
    Danke.
    Seb
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Bandit
    Gast

    Standard AW: Website mit MySQL

    Wenn du bei der Abfrage eine Bedingung einbaust, kannst du dir die Schleife schenken. Und wozu übergibst du der Funktion Variablen, die du dann doch nicht nutzt?

    Nachtrag: http://www.if-schleife.de/
    Geändert von bandit600 (16.11.2008 um 22:27 Uhr)

  3. #3
    Azubi(ne)
    Themenstarter

    Registriert seit
    05.06.2008
    Beiträge
    71
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Website mit MySQL

    Du hast recht, die Variablen brauche ich in der Funktion nicht.
    Wie sollte das mit der Bedingung aussehen?
    Bedingung hier festlegen:
    PHP-Code:
    $Abfrage "SELECT id, nummer, name, gruppe, text, bild FROM links"
    Meinst du sowas wie
    PHP-Code:
    WHERE nummer =  $_GET['wahl'
    Leider funktioniert das nicht. Bekomme ich noch ein Tip?

  4. #4
    Bandit
    Gast

    Standard AW: Website mit MySQL

    Leider funktioniert das nicht.
    Das ist eine denkbar schlechte Problembeschreibung!

    Was auch noch auffällt, du stellst die Verbinung zum MySQL-Server in einer Funktion her, das ist schlecht. Wird diese Funktion mehrfach in einem Script gebraucht, wurde immer wieder ein Connect stattfinden. In deinem Fall wird die Funktion zwar nur einmal aufgerufen, aber man sollte sich solche Dinge erst garnicht angewöhnen.

  5. #5
    Azubi(ne)
    Themenstarter

    Registriert seit
    05.06.2008
    Beiträge
    71
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Website mit MySQL

    Es liegt natürlich an der Syntax:
    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xampp\htdocs\myStaff\Datenbank-Test\Test-meineDB.php on line 20
    Meinst du diese Funktion hier:
    PHP-Code:
    VerbindungHerstellen(); 
    Warum ist das denn so schlecht? Ich habe es eigentlich im Kurs so gelernt.

  6. #6
    Bandit
    Gast

    Standard AW: Website mit MySQL

    Zitat Zitat von sero79 Beitrag anzeigen
    Es liegt natürlich an der Syntax
    Die du uns aber leider verschweigst
    Zitat Zitat von sero79 Beitrag anzeigen
    Ich habe es eigentlich im Kurs so gelernt.
    Das ist der Kurs schlecht. Wie schon erwähnt, in diesem Falle ist das nicht so dramatisch, weil die Funktion AbfrageProjekt nur einmal aufgerufen wird. Jetzt stelle dir aber eine Funktion vor, die mehrfach in einem Script aufgerufen wird und du hast da VerbindungHerstellen(); drin. Das ist doch dann Käse, oder?

  7. #7
    Azubi(ne)
    Themenstarter

    Registriert seit
    05.06.2008
    Beiträge
    71
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Website mit MySQL

    Das ist der verschwiegene Code:

    PHP-Code:
    $Abfrage "SELECT id, nummer, name, gruppe, text, bild FROM links WHERE nummer = $_GET['wahl']"
    Sollte anstatt VerbindungHerstellen() besser das in der Abfrage Funktion AbfrageProjekt ():

    PHP-Code:
     $Servername  'localhost';
     
    $Benutzername  '';
     
    $Passwort   '';
     
     
    $Verbindung mysql_connect $Servername$Benutzername$Passwort )
        or die (
    'Keine Verbindung möglich. Benutzername oder Passwort sind falsch.' mysql_error() );
     
     
    $AuswahlDB 'homepage';
     
    mysql_select_db$AuswahlDB )
        or die (
    'Die Datenbank existiert nicht.' mysql_error() ); 
    Aber das wäre doch das gleiche in grün. Du meinst ich sollte die ganze AbfrageProjekt () weglassen, oder?

  8. #8
    Bandit
    Gast

    Standard AW: Website mit MySQL

    PHP-Code:
    $Abfrage "SELECT id, nummer, name, gruppe, text, bild FROM links WHERE nummer = " mysql_real_escape_string($_GET['wahl']); 
    Ich würde es (wenn überhaupt) so machen:

    PHP-Code:
       $con VerbindungHerstellen();

       
    $result AbfrageProjekt($con); 
    Und noch ein Tipp: Schreibe immer
    PHP-Code:
       ... = mysql_query (...) or die ("MySQL-Error: " mysql_error()); 
    Auch sehr hilfreich während der Entwicklung eines Scriptes sind diese beiden Zeilen am Anfang:
    PHP-Code:
    error_reporting(E_ALL);
    ini_set("display_errors"true); 

  9. #9
    Azubi(ne)
    Themenstarter

    Registriert seit
    05.06.2008
    Beiträge
    71
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Website mit MySQL

    Vielen Dank,

    die GET Abfrage funktioniert jetzt aber mit der Funktion gibt es noch Probleme. Ich habe mal das so umgeschrieben:
    PHP-Code:
    <?php
     
     
    include 'function.php';
     
     
    $nummer   $_POST['nummer'];
     
    $name    $_POST['name'];
     
    $gruppe   $_POST['gruppe'];
     
    $text    $_POST['text'];
     
    $bild    $_POST['bild'];
     
    $Ergebnis AbfrageProjekt$id$nummer$name$gruppe$text$bild ); 
     include 
    "Test-AusgabeDB.html";
     
    //--------------------------------------------------------------------------- 
     
    error_reporting(E_ALL);
     
    ini_set("display_errors"true); 
     
     
     
    $con VerbindungHerstellen();
     
    $Ergebnis AbfrageProjekt($con); 
     
    function 
    AbfrageProjekt($con)
    {
     
     
    $Abfrage "SELECT id, nummer, name, gruppe, text, bild FROM links WHERE nummer = " $_GET['wahl'];
     
    $Ergebnis mysql_query($Abfrage$con)
      or die (
    "MySQL-Error: " mysql_error() );
     
     return 
    $Ergebnis;
    }
     
    ?>
    Fehlermeldung:
    Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\xampp\htdocs\myStaff\Datenbank-Test\Test-meineDB.php on line 27
    MySQL-Error:
    Line 27 ist das hier:
    PHP-Code:
    $Ergebnis mysql_query($Abfrage$con
    Was mache ich falsch?

  10. #10
    Bandit
    Gast

    Standard AW: Website mit MySQL

    Entweder geht der connect in die Hose oder dein VerbindungHerstellen() liefert nicht die Resource-ID.

Ähnliche Themen

  1. Meine Website und meine Probleme mit der Website
    Von Georg Beyer im Forum Eure Homepages und Foren - Vorstellung und Bewertungen
    Antworten: 5
    Letzter Beitrag: 11.10.2008, 16:08
  2. MySQL Daten mit PHP in website integrieren?????
    Von help mee im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 25.09.2007, 20:50
  3. Die optimierte Website, Website-optimierung
    Von ron-mel im Forum Link Tipps
    Antworten: 1
    Letzter Beitrag: 29.06.2007, 16:52
  4. per PHP neue MySQL-Datenbank und MySQL-Benutzer anlegen
    Von sudeki05 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 15.04.2007, 19:40

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •