Mysql /PHP rechnung

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

  • Mysql /PHP rechnung

    Hallo ich habe ein Probblem mit folgenden Quelltest


    Mein Formular sieht so aus
    PHP-Code:

    <br>
    <
    br>
    <
    form action="ub50.php" method="post">
     <
    b>&nbsp;050 Punkte überweisen</b>
    <
    input type="text" name="50" disabled="1" value="{username}"
     <
    input type="submit" value="Überweisen">
    </
    form>
    <
    br>
    <
    br



    und meine ub50.php sieht so aus.

    PHP-Code:
    <?php 
     $name 
    $_POST["50"]; // Variablen einlesen 
     
    $text "$name"// Textstring zusammensetzen 

    $db_host "localhost";
    $db_user "******";
    $db_pw "*****";
    $db "******";

    $conn mysql_connect($db_host,$db_user,$db_pw); 
    mysql_select_db($db); 



    $selUser = @mysql_fetch_array(@mysql_query("SELECT points From wgcc_user WHERE username = '".mysql_real_escape_string($text)."' LIMIT 1"$conn)); 




    if (
    $selUser["points"] < 120

        echo 
    "Du hast weniger als 200 Punkte"

    else 

        
    // alles okay, Beitrag kann angenommen werden 

    ?>
    Obwohl der User der Eingegeben wurde über 200 Punkte hat kommt immer die meldung Du hast weniger als 200 Punkte.

    Achso dieses Script fragt die Datenbank ab um vestzustellen ob der User mehr als 200 Punkte drauf hat.

  • #2
    $selUser = @mysql_fetch_array(@mysql_query("SELECT
    Erstmal regeln lesen und befolgen. Und danach ne Testausgabe mittels print_r($selUser) und ausgabe hier posten.

    OffTopic:
    und danach Gehirn einschalten:
    if [...] < 120
    [...]weniger als 200 Punkte

    Kommentar


    • #3
      ja wenn du mit @ fehler bei der datenbankabfrage unterfrückst kannst du auch keine fehlermeldungen bekommen!

      min mal die @'s raus und probier dann nochmal ..
      oder lasß dir mal über
      print_r( $selUser ); den inhalt des abgefragten arrays ausgeben..

      dann sehen wir weiter...

      Kommentar


      • #4
        OffTopic:
        Boar, bist du langsam... und so unaufmerksam...

        Kommentar


        • #5
          meinste mich? mit langsam?

          Kommentar


          • #6
            Ich hab die @ rausgenommen geht immer noch net...

            hab reingenommen
            print_r( $selUser );

            Zeigt mir immer noch User hat weniger als 200 Punkte.


            wenn ich satt

            PHP-Code:
            $selUser mysql_fetch_array(mysql_query("SELECT points From wgcc_user WHERE username = '".mysql_real_escape_string($text)."' LIMIT 1"$conn)); 

            das eingebe geht es ja , also denke ich der name von vorherigen Formular wird nicht übernommen

            PHP-Code:
            $selUser mysql_fetch_array(mysql_query("SELECT points From wgcc_user WHERE username = 'Samq' "$conn)); 

            Kommentar


            • #7
              dann gib mal die Query aus, schalt das error_reporting(E_ALL) usw. Das ist simples debugging. Wenn du gemerkt hast, woran es liegt, dann kümmer dich mal um register_globlals. Sind alles Grundlagen...

              print_r( $selUser );

              Zeigt mir immer noch User hat weniger als 200 Punkte.
              DAS ist nicht die ausgabe von print_r()!

              @jens: ja, meinte dich mit langsam!

              und nochwas: Es ist natürlich ein ziemlicher unfug, sein Formularfeld "50" zu nennen und nachher zu versuchen es mit $text abzufragen. Ganz davon abgesehen, das ne Zahl wohl generell ziemlich unverträglich als Name und erst recht als Variable ist.
              <input type="text" name="50" ...
              Zuletzt geändert von TobiaZ; 06.08.2007, 14:58.

              Kommentar


              • #8
                http://www.w3.org/TR/html4/types.html#type-cdata
                ID and NAME tokens must begin with a letter ([A-Za-z]) ...
                EDIT:
                bin auch nur ein jens
                Zuletzt geändert von onemorenerd; 06.08.2007, 15:08.

                Kommentar


                • #9
                  OffTopic:
                  Ist ja nicht so schlimm.

                  Kommentar


                  • #10
                    So isses richtig XD

                    Puhhh....


                    PHP-Code:

                    <?php
                    $db_host 
                    "localhost";
                    $db_user "***";
                    $db_pw "****";
                    $db "******";

                    $conn mysql_connect($db_host,$db_user,$db_pw);
                    mysql_select_db($db);

                    $name $_POST["zahl"]; // Variablen einlesen 
                     
                    $text "$name"// Textstring zusammensetzen  

                    $selUser = @mysql_fetch_array(@mysql_query("SELECT points From wgcc_user WHERE username = '".mysql_real_escape_string($text)."' LIMIT 1"$conn)); 




                    if (
                    $selUser["points"] < 200)
                    {
                        echo 
                    "Du hast weniger als 200 Punkte";
                    }
                    else
                    {
                        
                    // alles okay, Beitrag kann angenommen werden
                    }
                    ?>

                    Kommentar


                    • #11
                      PHP-Code:
                      $text "$name"// Textstring zusammensetzen 
                      Erkläre mal bitte was diese Zeile macht.

                      Kommentar


                      • #12
                        PHP-Code:
                        $name $_POST["zahl"]; // Variablen einlesen 
                         
                        $text "$name"// Textstring zusammensetzen 
                        Dazwischen fehlen aber noch läppische 10 Zeilen:

                        PHP-Code:
                        $name $_POST["zahl"]; // Variablen einlesen 
                        $temp1 $name;
                        $temp2 $temp1;
                        $temp3 $temp2;
                        $temp4 $temp3;
                        $temp['name'] = $temp4;
                        $temp5 serialize($temp);
                        $temp6 $temp5;
                        $temp7 unserialize($temp6);
                        $temp8 trim($temp7);
                        $name '' "$temp8'';
                         
                        $text "$name"// Textstring zusammensetzen 
                        In diesem Sinne, auf ein neues Browsergame...

                        Kommentar

                        Lädt...
                        X