Wie komme ich hier weiter? Newsabfrage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wie komme ich hier weiter? Newsabfrage

    Hi,

    bin grade dabei eine Auflistung vorhandener News zu schreiben. Diese sollen in einer Select liste ausgegeben. Diesen Teil habe ich geschafft. Anschließend sollen die Benutzer eins der News auswählen können und mittels einem submit butten die News dann angezeigt bekommen.

    Bei dem Teil "happerts" bei mir ziemlich ich hatte zwar einige Ideen wie man die Abfrage der Datenbank dann gestalten kann, aber ich bekam nix als Fehlermeldungen.

    Vielleicht könnt ihr mir ein Vorschlag machen, bzw. wie würdet ihr das machen?? Hier der Bereich, den ich schon geschafft habe

    PHP-Code:
    <?php
    include ("include_connect_db.php"); 
    $sql "SELECT  id, titel, text, datum, ersteller, ausgewalt  FROM news ORDER BY id DESC";
    $result mysql_query($sql) OR die(mysql_error());
    ?>
    <form action='page_news_archive.php' method="post">
    <select size='1' name='openlinks'>
          <?php if(mysql_num_rows($result)) {


        while (list(
    $id,$titel,$text,$datum,$ersteller,$ausgewalt) = mysql_fetch_row($result)) {
                  
                         echo 
    "<option value='$id'>$titel";
                          
                    
    }
    }
    ?>
    </select><br><br>
    <input type="submit" name="newsanzeige" value="Anzeigen"> 
    /* Wie gehts dann weiter? */
    </form>

    Da ich heute schon den ganzen Vormittag rumprobiere, bin ich echt schon am verzweifeln Bin halt noch recht neu was php betrifft.

    Thx 4 Help
    k4in0

  • #2
    PHP-Code:
    echo "<option value='$id'>$titel"
    sieht irgendwie wie ein HTML Fehler aus

    PHP-Code:
    echo "<option value=\"".$id."\">".$titel."</option>"
    "Nicht jeder Mensch kann und soll Programmieren[...]".

    Kommentar


    • #3
      warum rufst du alle felder auf, wenn du nur 2 brauchst?
      SELECT id, titel FROM news ORDER BY id DESC

      while (list($id,$titel) = mysql_fetch_row($result)){
      ...
      }
      Slava
      bituniverse.com

      Kommentar


      • #4
        Re: Wie komme ich hier weiter? Newsabfrage

        aber ich bekam nix als Fehlermeldungen.
        [/B]
        soso, und nun sag das mal ein wenig genauer...


        edit:
        das escapen ist schön xkl1986, doch ich denke, dass es in dem falle auch "unsauber" funktioniert.
        ich befürchte, wir wissen noch nicht wirklich, was er mit "es hapert" meint
        **********
        arkos
        **********

        Kommentar


        • #5
          hm ne, alles was ich hier oben gepostet hab, funzt ja richtig gut nur wies dann weiter geht wollt ich wissen
          ich kann dir ja mal nen versuch posten wie ich mir dass dann gedacht hab

          PHP-Code:
          <?php
          include ("include_connect_db.php"); 
          $sql "SELECT  id, titel, text, datum, ersteller, ausgewalt  FROM news ORDER BY id DESC";
          $result mysql_query($sql) OR die(mysql_error());
          ?>
          <form action='page_news_archive.php' method="post">
          <select size='1' name='openlinks'>
                <?php if(mysql_num_rows($result)) {


              while (list(
          $id,$titel,$text,$datum,$ersteller,$ausgewalt) = mysql_fetch_row($result)) {
                        
                               echo 
          "<option value='$id'>$titel";
                       
          $ausgewaehlteid $id;
                                
                          
          }
          }
          ?>
          </select><br><br>
          <input type="submit" name="newsanzeige" value="Anzeigen">
          </form>
          <?php

          if (isset($_POST["submit"])){

          include (
          "include_connect_db.php"); 
          $sql "SELECT  id, titel, text, datum, ersteller, ausgewalt  FROM news WHERE ID = $ausgewaehlteid";
          $result mysql_query($sql) OR die(mysql_error());
          if(
          mysql_num_rows($result)) {


              while (list(
          $id,$titel,$text,$datum,$ersteller,$ausgewalt) = mysql_fetch_row($result)) {
                          echo 
          "
                  <table border='1' bordercolor='gray' cellspacing='1' width='500'><tr><td><table border='0' width='500'>
                  <tr>
                  <td class='datum'>Rubrik: 
          $ausgewalt</td>
                  <td> </td>
                  </tr><tr>
                  <td class='newstitel'>
          $titel</td>
                  <td> </td>
                  </tr><tr>
                  <td colspan='2' class='text'>
          $text</td>
                  </tr><tr>
                  <td class='datum'>geschrieben am: 
          $datum - von $ersteller</td>
                  <td> </td>
                  </tr></table></td></tr></table><br>
                          "
          ;
          }
          }
          ?>
          vielleicht is dir jetzt klarer, was ich eigentlich erreichen wollte?

          danke auf jedenfall mal für deine schnelle antwort !!!

          Kommentar


          • #6
            Parse error: syntax error, unexpected $end in /var/www/web444/html/krankenpflegeschule/homepage/page_news_archive.php on line 232
            kommt bei dem Versuch hier

            Kommentar


            • #7
              echo $ausgewaehlteid;

              und bitte error_reporting(E_ALL) einschalten.
              Slava
              bituniverse.com

              Kommentar


              • #8
                du brauchst nicht $ausgewaehlteid sondern $_POST['openlinks'] für deine db-abfrage, denn das suchst du dir ja in der select-box aus...

                edit:
                Original geschrieben von k4in0
                Parse error: syntax error, unexpected $end in /var/www/web444/html/krankenpflegeschule/homepage/page_news_archive.php on line 232
                kann mal jemand für mich raten, was in zeile 232 steht?? batterie meiner glaskugel is leer...
                Zuletzt geändert von arkos; 28.09.2007, 11:54.
                **********
                arkos
                **********

                Kommentar


                • #9
                  muss schnell wieder mal in meine klasse zurück vll könnt ihr mir sagen wie ich das schreiben muss dass nur die ausgewählte id als news erscheint, wenn ich auf anzeigen klicke..

                  Danke für die Zeit

                  k4in0

                  Kommentar


                  • #10
                    Original geschrieben von k4in0
                    kommt bei dem Versuch hier
                    zähle die Klammern '{' und '}'
                    Slava
                    bituniverse.com

                    Kommentar


                    • #11
                      Und gib valides Html aus

                      also mit </option>
                      "Nicht jeder Mensch kann und soll Programmieren[...]".

                      Kommentar


                      • #12
                        und schmeiss den doppelten include raus falls es die selbe datei ist x) der zweite include ist doch unnötig
                        und könnte unter umständen zu duplicated function führen wo PHP sich unter umständen auch dran aufgeilt und sich einfach aufhängt x)
                        Bitte Beachten.
                        Foren-Regeln
                        Danke

                        Kommentar


                        • #13
                          ok hab mal alles (hoff ich) geändert was ihr vorgeschlagen habt.
                          Eine } hat gefehlt und jetzt kommt auch keine fehlermeldung mehr.
                          Wenn man jetzt auf Submit klickt kommt einfach die gleiche seite nochmal, d.h. es gibt nicht das richtige aus...

                          hier mein ergebnis zu euren vorschlägen

                          PHP-Code:
                          <?php
                          include ("include_connect_db.php");
                          $sql "SELECT  id, titel  FROM news ORDER BY id DESC";
                          $result mysql_query($sql) OR die(mysql_error());
                          ?>
                          <form action='page_news_archive.php' method="post">
                          <select size='1' name='openlinks'>
                                <?php if(mysql_num_rows($result)) {


                              while (list(
                          $id,$titel) = mysql_fetch_row($result)) {
                                        
                                               echo 
                          "<option value='$id'>$titel </option>";
                                  
                                                
                                          
                          }
                          }
                          ?>
                          </select><br><br>
                          <input type="submit" name="newsanzeige" value="Anzeigen">
                          </form>
                          <?php
                          $auswahl 
                          $HTTP_POST_VARS["openlinks"]; 
                          if (isset(
                          $_POST["submit"])){
                          include (
                          "include_connect_db.php"); 
                          $sql "SELECT  id, titel, text, datum, ersteller, ausgewalt  FROM news WHERE ID = $auswahl";
                          $result mysql_query($sql) OR die(mysql_error());
                          if(
                          mysql_num_rows($result)) {


                              while (list(
                          $id,$titel,$text,$datum,$ersteller,$ausgewalt) = mysql_fetch_row($result)) {
                                          echo 
                          "
                                  <table border='1' bordercolor='gray' cellspacing='1' width='500'><tr><td><table border='0' width='500'>
                                  <tr>
                                  <td class='datum'>Rubrik: 
                          $ausgewalt</td>
                                  <td> </td>
                                  </tr><tr>
                                  <td class='newstitel'>
                          $titel</td>
                                  <td> </td>
                                  </tr><tr>
                                  <td colspan='2' class='text'>
                          $text</td>
                                  </tr><tr>
                                  <td class='datum'>geschrieben am: 
                          $datum - von $ersteller</td>
                                  <td> </td>
                                  </tr></table></td></tr></table><br>
                                          "
                          ;
                          }
                          }
                          }
                          ?>
                          Liegts vll daran dass ich während dem ganzen vorgang den "<?php" - befehl unterbreche und dann wieder starte?

                          Kommentar


                          • #14
                            schreib mal statt:
                            PHP-Code:
                            $auswahl $HTTP_POST_VARS["openlinks"]; 

                            PHP-Code:
                            $auswahl $_POST["openlinks"]; 
                            und nimm den doppeltgemoppelten db-connect-include raus


                            edit:
                            und das deine ausgabetabelle hässlich ist, wird auch sicher bald angemerkt

                            edit2:
                            Original geschrieben von k4in0
                            Liegts vll daran dass ich während dem ganzen vorgang den "<?php" - befehl unterbreche und dann wieder starte?
                            QUATSCH.... vergiss das schnell wieder
                            Zuletzt geändert von arkos; 28.09.2007, 16:46.
                            **********
                            arkos
                            **********

                            Kommentar


                            • #15
                              include is draußen also nur noch am anfang und hab $_POST["openlinks"] gemacht. hat den selben effekt.

                              kannst dirs ja mal anguggn auf http://www.58b.de.vu

                              Kommentar

                              Lädt...
                              X