Ergebnis 1 bis 13 von 13

Thema: MySQL: Einzelnen Wert in php-Datei auslesen >_>'

  1. #1

    MySQL: Einzelnen Wert in php-Datei auslesen >_>'

    eines vorweg:
    ich habe NULL ahnung von php-scripting oder mysql-datenbanken, aber ich denke es sollte hier jedem möglich sein, mir zu erklären, wie ich einen bestimmten, einzelnen wert aus meiner datenbank in einer beliebigen php-datei auslesen kann.

    alles, was ich haben will, ist der komplette php-tag, den ich dafür in meinen quelltext einfügen muss. bitte keine links zu irgendwelchen blöden tutorials oder dergleichen, ich will einfach nur das fertige stück script zum einfügen, wenns recht ist
    natürlich kann ich bestimmte werte wie db-benutzername und -passwort (zum connecten zur datenbank) selber einfügen, aber alles andere müsst ihr mir zeigen ^^'

    es handelt sich um ein phpbb-forum. die betroffene tabelle heißt phpbb_topics und enthält verschiedene felder wie topic_id, topic_title, topic_poster, topic_replies, topic_views, etc.

    ich möchte den topic-replies-wert des topics mit der ID xxx ausgelesen haben. wie geht das? bitte den kompletten php-tag

  2. #2
    PHP-Code:
    $sql "SELECT `topic_id`, `topic_replies` FROM `phpbb_topics` ORDER BY topic_id DESC";
    $query mysql_query($sql);
    while(
    $row mysql_fetch_object($query))
    {
    echo 
    $row->topic_id;
    echo 
    $row->topic_replies;

    So das wars

  3. #3
    also mal sehn:

    PHP-Code:
    <?php
            $host 
    "Geheim";
            
    $pass "";
            
    $user "root";
            
    $db "datenbank";
            
            
    $link mysql_connect($host$user$pass)
               or die(
    "Keine Verbindung möglich: " mysql_error());

            
    mysql_select_db($db) or die("Auswahl der Datenbank fehlgeschlagen");

            
    $query "SELECT * FROM phpbb_topics";
            
    $result mysql_query($query) or die("Anfrage fehlgeschlagen: " mysql_error());
            

                
    $abfrage "SELECT topic_replies FROM phpbb_topics Where topic_id=1";
                
    $ergebnis mysql_query($abfrage);
                
    $replies mysql_result($ergebnis);
                
                echo 
    $replies;
                
            
    ?>
    Bei
    PHP-Code:
    $abfrage "SELECT topic_replies FROM phpbb_topics Where topic_id=1"
    einfach die ID nach "topic_id=" angeben, die du haben willst...

    (ohne Gewähr - ich kann auch nich alles)

    EDIT: bin halt zu langsam...

  4. #4
    PHP-Code:
    <?php

    $host 
    "localhost";

    $pass "DEIn PASSWORT";

    $user "DEINUSERNAME";

    $db "DATENBANK NAME";


    @
    mysql_connect($host$user$pass) OR die(mysql_error());


    mysql_select_db($db) OR die(mysql_error());

    unset(
    $host);
    unset(
    $pass);
    unset(
    $user);
    unset(
    $db);


    $sql "SELECT `topic_id`, `topic_replies` FROM `phpbb_topics` WHERE `topic_id` = '$_GET[SUCH_ID]' ORDER BY `topic_id` DESC";
    $query mysql_query($sql);
    $Daten mysql_fetch_assoc($query);

    echo 
    "Der topic_replies wert von ".$_GET[SUCH_ID]." ist ".$Daten[topic_replies] ;
    ?>
    Ungetestet müsste klappen.

    In einer leere datei Kopieren die endung in .php ändern.

    Die Topic ID erhält das Scritp wie folgt :

    In der Url folgendes an die adresse anhängen : ?SUCH_ID=xxx
    also z.B. http://fkfhkhg.de/kdjhf/hh/wasweissich.php?SUCH_ID=xxx


    edit:

    >.< mal sehn welches script klappt ^^,

  5. #5
    PHP-Code:
    <?php

      $host 
    "localhost"// Wird wahrscheinlich so bleiben
      
    $user "username";  // Anpassen
      
    $pass "passwort";  // Anpassen

      
    $db   "database";  // Rate!

      
    mysql_connect($host$user$pass) or die(mysql_error());

      
    mysql_select_db($db) or die(mysql_error());

      
    $topic_id xxx;     // Wazzap.

      
    $result mysql_query("SELECT `topic_replies` FROM `phpbb_topics` WHERE `topic_id` = '$topic_id'") or die(mysql_error());

      
    $topic_replies mysql_result($result0);

      echo 
    $topic_replies;

    ?>
    Die mMn einfachste und sauberste Möglichkeit. (Bei den anderen Vorschlägen fehlte entweder was, oder es waren unnötige Sachen zuviel da).

    Dadies Skript ist übrigens exploitable.

    Hatte noch nen Fehler.

    Geändert von Dingsi (21.07.2005 um 21:42 Uhr)

  6. #6
    Zitat Zitat von Dingsi
    PHP-Code:
    <?php

      $host 
    "localhost"// Wird wahrscheinlich so bleiben
      
    $user "username";  // Anpassen
      
    $pass "passwort";  // Anpassen

      
    $db   "database";  // Rate!

      
    mysql_connect($host$user$pass) or die(mysql_error());

      
    mysql_select_db($db) or die(mysql_error());
      
      
    $topic_id $_GET['topic_id'];
      
    $topic_id mysql_escape_string($topic_id);     // zOMG!1 MySQL Injection prevented. :/

      
    $result mysql_query("SELECT `topic_replies` FROM `phpbb_topics` WHERE `topic_id` = '$topic_id'") or die(mysql_error());

      
    $topic_replies mysql_result($result0);

      echo 
    $topic_replies;

    ?>
    So kann mans dann auch ueber bla.php?topic_id=1337 nutzen ohne Angst vor Scriptkiddies zu haben.

    Geändert von codec (21.07.2005 um 21:56 Uhr)

  7. #7
    PHP-Code:
    <?php

      $host 
    "localhost"// Wird wahrscheinlich so bleiben
      
    $user "username";  // Anpassen
      
    $pass "passwort";  // Anpassen

      
    $db   "database";  // Rate!

      
    mysql_connect($host$user$pass) or die(mysql_error());

      
    mysql_select_db($db) or die(mysql_error());
      
      
    $topic_id $_GET['topic_id'];
      
    $topic_id mysql_escape_string($topic_id);     // SQL Injection is teh shit!1

      
    $result mysql_query("SELECT `topic_replies` FROM `phpbb_topics` WHERE `topic_id` = '$topic_id'") or die(mysql_error());

      
    $topic_replies mysql_result($result0);

      echo 
    "Der topic_replies wert von ".$topic_id." ist ".$topic_replies;

    unset(
    $host);
    unset(
    $pass);
    unset(
    $user);
    unset(
    $db); 
    unset(
    $topic_id);
    unset(
    $result); 
    unset(
    $topic_replies); 
    ?>
    So damit haben wir einen satz und alle Variablen gelöscht womit niemand sie einfach so auslesen kann

  8. #8
    Zitat Zitat von dadie
    PHP-Code:
    <?php

      $host 
    "localhost"// Wird wahrscheinlich so bleiben
      
    $user "username";  // Anpassen
      
    $pass "passwort";  // Anpassen

      
    $db   "database";  // Rate!

      
    mysql_connect($host$user$pass) or die(mysql_error());

      
    mysql_select_db($db) or die(mysql_error());
      
      
    $topic_id $_GET['topic_id'];
      
    $topic_id mysql_escape_string($topic_id);     // SQL Injection is teh shit!1

      
    $result mysql_query("SELECT `topic_replies` FROM `phpbb_topics` WHERE `topic_id` = '$topic_id'") or die(mysql_error());

      
    $topic_replies mysql_result($result0);

      echo 
    "Der topic_replies wert von ".$topic_id." ist ".$topic_replies;

    unset(
    $host);
    unset(
    $pass);
    unset(
    $user);
    unset(
    $db); 
    unset(
    $topic_id);
    unset(
    $result); 
    unset(
    $topic_replies); 
    ?>
    So damit haben wir einen satz und alle Variablen gelöscht womit niemand sie einfach so auslesen kann

    Und was soll das bringen?
    Ich seh keinen Sinn darin die Variablen nach der Ausfuehrung des Scripts zu unsetten. Die landen danach so oder so im Datennirvana wenn das Script fertig geparst ist.

  9. #9
    man dankt vielmals für die mühe! ^^

    und verzeihung, falls es dieses mehr als elementare thema schon öfter gab, aber ich brauchte halt 'ne extrawurst

  10. #10
    Zitat Zitat
    Und was soll das bringen?
    also

    1,Hat man einen schönen satz ich meine "Die ID ist XXXX" ist doch viel schöner als einfach nur XXXX

    2,Ich bin zwar kein wirklicher Crack aber wenn man eine Variable ofen läst ist sie nie deactiviert.Was heissen würde das sie auslesbar ist (wie auch immer) es ist halt möglich (soweit ich weiss) und ich für meinen teil halte passwort etz. lieber geheim ^^

  11. #11
    Zitat Zitat von dadie
    also

    1,Hat man einen schönen satz ich meine "Die ID ist XXXX" ist doch viel schöner als einfach nur XXXX
    Ich meinte den unset()-Kram.

    Zitat Zitat
    2,Ich bin zwar kein wirklicher Crack aber wenn man eine Variable ofen läst ist sie nie deactiviert.Was heissen würde das sie auslesbar ist (wie auch immer) es ist halt möglich (soweit ich weiss) und ich für meinen teil halte passwort etz. lieber geheim ^^
    Naja, aber wenn das Script durchgelaufen ist kannst du die Variablen nicht mehr auslesen.
    Und da in dem Script ohnehin keine PHP-Injection besteht ist das unset() relativ ueberfluessig - imo.

  12. #12
    Hmm da fällt mir ein so kann man auch den Schutzmachanismus von phpBB umgehen das heisst geschützte Bereich sehen und lesen ^^ oder schreiben hat schon was muss nur noch die Zugangsdaten ham

    Ach ja back2topic:

    Zitat Zitat
    2,Ich bin zwar kein wirklicher Crack aber wenn man eine Variable ofen läst ist sie nie deactiviert.Was heissen würde das sie auslesbar ist (wie auch immer) es ist halt möglich (soweit ich weiss) und ich für meinen teil halte passwort etz. lieber geheim ^^
    Woher hasste den das? O_o
    Is AFAIK ziemlicher Unsinn da die Variabeln am Ende eines Scripts eh verworfen werden und wenn man die nicht aufruft durch das PHP Script selber und mit denen nichts in Sachen GET macht relativ unnötig

  13. #13
    Afaik tut unset nur die Variable "löschen", damit sie wieder frei belegbar ist. z.B. werden die Array Einstellungen gelöscht, damit man die Variable (Array wird normale Variable) für "einfache" Inhalte verwenden kann (Arrays wären in diesem Falle "komplizierte" Inhalte).
    Aber das die Variable erhalten bleibt? Schön wärs... Sowas bräuchte ich schon im Moment.

    Dennis

Berechtigungen

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