Zum Inhalt springen

Dplus

Mitglieder
  • Gesamte Inhalte

    12
  • Benutzer seit

  • Letzter Besuch

Beiträge von Dplus

  1. Hallo zusammen,

    habe für ein Tippspiel das in PHP geschrieben ist, eine Erweiterung geschrieben. Es stellt eine Strafkasse für vergessene Tipps dar. Die Höhe der Strafe ist in der Config zur Zeit auf, 0,50€ eingestellt. Sobald an einem Spieltag ein Tipp vergessen wird, werden 0,50€ dem jeweiligem User angerechnet. Hierbei ist es egal ob er einen oder mehrere Tipps vergessen hat, es werden immer nur 0,50€ hinzugerechnet.

    Sobald ein Spiel vergessen wird, zählt er die 0,50 dazu, jedoch zählt er auch für jeden vorherigen Spieltag der vor dem aktuellen Spieltag liegt 0,50 dazu, obwohl getippt wurde.

    Hab jetzt in der Testumgebung 4 Spieltage komplett getippt und abgeschlossen: Strafkasse = 0,00€

    Dann habe ich den 5ten Spieltag ein Spiel ausgelassen zu Tippen: Strafkasse = 2,50€

    Heißt also er hat die Spieltage 1 - 4 auch als nicht getippt gewertet, warum auch immer.

    Dann habe ich Spieltag 6 - 10 getippt und abgeschlossen: Strafkasse == 2,50€ (hier hat er also wieder nichts berechnet was ja korrekt ist)

    Sobald ich den an Spieltag 11 einen Tipp auslasse, setzt er: Strafkasse = 5,50€ (also Spieltag 6 - 11) wieder dazugerechnet.

    Komisches Problem, das ich im Moment nicht ganz nachvollziehen kann. Vieleicht will ja mal jemand drüberschauen ob er nen Denkfehler findet .

    Hier mal der Code des eigentlichen Script:

     <!-- Mod Strafkasse

    <?php

    $aktsptg = AktuellerSpieltag();
    $usertipcount = getMissingUserTipps();


    $last_sptg = $aktsptg - 1;
    if ($last_sptg < 1) $last_sptg = 1;
    if ($last_sptg >= 1)
    {
    $x = 0;
    for ($y = 1; $y <= $last_sptg; $y++)
    {
    $query_spiele = mysql_query('SELECT id
    FROM '.$tbl['spiele'].'
    WHERE liga = '.$saison['liga'].'
    AND saison = '.$saison['jahr2'].'
    AND spieltag <= '.$last_sptg);
    $anzahl_spiele = mysql_num_rows($query_spiele);
    while ($row_spiele = mysql_fetch_array($query_spiele))
    {
    $query_tipps = mysql_query('SELECT id
    FROM '.$tbl['tipps'].'
    WHERE u_id = '.$_SESSION['s_user'].'
    AND s_id = '.$row_spiele['id']);
    $anzahl_tipps = mysql_num_rows($query_tipps);

    if (!$anzahl_tipps) $fehlendes_game = 1;
    }

    if ($fehlendes_game == 1) $x++;
    unset ($fehlendes_game);
    }
    $strafzahlung = number_format($zusatz_betrag * $x, 2, ',', '.');

    $update = mysql_query('UPDATE '.$tbl['user'].'
    SET strafkasse = "'.$strafzahlung.'"
    WHERE id = '.$_SESSION['s_user']);
    $query_zahlung = mysql_query('SELECT id, strafkasse FROM '.$tbl['user'].' WHERE id = '.$_SESSION['s_user']);
    $row_zahlung = mysql_fetch_array($query_zahlung);
    }

    ?>
    Ende Mod Strafkasse -->
    <?php
    if ($strafkasse['show'] == TRUE)
    { ?>
    <tr><td colspan="2">Strafkasse: <font color="#ff0000"><b><?php echo $row_zahlung['strafkasse']; ?></b></font> €</td></tr>
    <?php
    }
    ?>[/php]

    Hoffe ich konnte mein Anliegen verständlich rüberbringen ;)

  2. Kleiner Nachtrag:

    (Oder nächste Baustelle^^)

    Die Antwort ist zwar nun in HEX aber immernoch nicht richtig.

    Nach einem befehl an die Karte wo sie mit:

    01 02 00 00 02 03 00 10 03 84 00 00 00 17 02 00 00 00 00 00 00 47 45 52 EF

    Antworten sollte kommt:

    01 02 02 03 00 00 3D 01 3F 6F 00 3F 3F 3F 00 51

    PS:

    Wollte eigentlich den Beitrag hier drüber editieren, dies ging aber leider nicht mehr.

  3. Ja das habe ich noch nicht gemacht

    Aber habe es eben hinbekommen:

    
        Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    
            Dim TheHex As Object
    
            Dim a As String
    
            Dim Final As String
    
            a = SerialPort1.ReadExisting()
    
            Final = ""
    
            For i = 1 To Len(a)
    
                TheHex = Hex(Asc(Mid(a, i, 1)))
    
                If Len(TheHex) = 1 Then TheHex = "0" & TheHex
    
                Final = Final & TheHex + " "
    
            Next i
    
            SerialPort1.RtsEnable = True
    
            SerialPort1.RtsEnable = False
    
            SerialPort1.DtrEnable = True
    
            SerialPort1.RtsEnable = False
    
            ListBox1.Items.Add("RX: " + Final)
    
    
    
        End Sub
    
    

    Muss zwar noch 2 mal klicken bis der ATR kommt, aber zumindest seh ich ihn nun so wie er sein soll.

    Wie gesagt bin auf dem Gebiet VB völlig unwissend gewesen^^

  4. mmhhh....

    ich raff det net^^

    habs nu so versucht:

    
        Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    
            Dim a As String
    
    
                SerialPort1.RtsEnable = True
    
                SerialPort1.RtsEnable = False
    
                SerialPort1.DtrEnable = True
    
                SerialPort1.RtsEnable = False
    
                Text = (" ") + (Hex(Asc(Mid(a, 1, 2)))) + (" ") + (Hex(Asc(Mid(a, 2, 2)))) + (" ") + (Hex(Asc(Mid(a, 3, 2)))) + (" ") + (Hex(Asc(Mid(a, 4, 2))))
    
                 Text = SerialPort1.ReadExisting
    
                  ListBox1.Items.Add("RX: " + Text)
    
    
    
        End Sub
    
    

    Dies bewirkt eigentlich einen reset und wirft den ATR aus.

    Und im Debug komtm diese Fehlermeldung:

    Die Länge des Arguments String muss größer als 0 (null) sein.

  5. Ja das ist auch die Karte

    Also wenn ich einen Reset durchführe antwortet die Karte ja mit ihrem ATR

    Der kommt auch wird halt nur nicht in HEX angezeigt.

    Und genau das möchte ich tun, ich möchte der Anwendung sagen das alles was von der Karte kommt in HEX angezeigt werden soll.

    Und da beiß ich mir die Zähne aus.

    Alles was ich bei Google finde führt ins nichts oder ist zu alt und nicht mehr anwendbar :(

    Und was ich bei msdn über die Hex-Funktion finden konnte ist mal recht mager.

    Ich sprech die Karte ja auch mit Chr(&H) an was ja auch funzt

    Nur die Antwort wird noch nicht richtig angezeigt

  6. Hallo

    beschäftige mich seit ein paar Tagen mit Visual Basic

    Und möchte den ATR ener SmartCard auslesen.

    Dies bekomme ich auch hin

    Nur soll der ATR und auch die spätere Daten in HEX angezeigt werden.

    Such nun schon den ganzen Tag udn find einfach nix was mir den Weg zeigt wie ich die Daten in Hex angezeigt bekomme.

    Habe was gefunden für VB6 aber so wie ich das sehe ist dies in VB2010 nicht anwendbar

    (Private Function InterpretarHex)

    Hier mal mein Code

    
    Public Class Form1
    
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    
            Try
    
                SerialPort1.PortName = TextBox28.Text
    
                SerialPort1.BaudRate = TextBox31.Text
    
                SerialPort1.Open()
    
                SerialPort1.RtsEnable = True
    
                SerialPort1.RtsEnable = False
    
                SerialPort1.DtrEnable = True
    
                SerialPort1.RtsEnable = False
    
                Button1.Enabled = False
    
                Button2.Enabled = True
    
                Button3.Enabled = True
    
                Button4.Enabled = True
    
                Button4.Enabled = True
    
                Button5.Enabled = True
    
                Button6.Enabled = True
    
                Button7.Enabled = True
    
            Catch ex As Exception
    
                MsgBox("Verbindung zum Reader konnte nicht hergestellt werden")
    
    
            End Try
    
    
    
        End Sub
    
    
        Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
    
            If SerialPort1.IsOpen = True Then
    
                SerialPort1.Close()
    
            End If
    
        End Sub
    
    
        Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    
    
            Text = SerialPort1.ReadExisting
    
            ListBox1.Items.Add("RX: " + Text)
    
    
    
        End Sub
    
    
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    
            SerialPort1.Close()
    
            Button1.Enabled = True
    
            Button2.Enabled = False
    
            Button3.Enabled = False
    
            Button4.Enabled = False
    
            Button4.Enabled = False
    
            Button5.Enabled = False
    
            Button6.Enabled = False
    
            Button7.Enabled = False
    
        End Sub
    
    End Class
    
    

    Der ATR der Karte kommt auch aber nicht in HEX wie es sein soll

    Und schicke ich Befehle an die Karte so wird nicht die erwartete Antwort der Karte angezeigt sondern ganz komische zeichen so halbe Rechtecke und so.

    Ich hoffe ihr könnt mir den zündenden Denkanstoss geben

  7. Ich würde Dir aber dringend einmal ein entsprechendes Tutorials / Buch über den SQL Syntax empfehlen

    Ja ich weiß, hab hier auch ne Menge an Anleitungen auf der Platte.

    Hab ja auch schon so manches verstanden.

    Mit dem AS bekomm noch garnet hin.

    Kommt nur Müll in der Ausgabe oder syntax Fehler.

    Habs aber nun hinbekommen.

    Manchmal sieht man den Wald vor lauter Bäume nicht. :upps

    Nun wird alles genau angezeigt aus den entsprechenden Tabellen.

    Hab aus

    $sql = "SELECT * FROM requestlist LEFT JOIN songlist ON requestlist.songID=songlist.ID";  

    $sql = "SELECT * FROM songlist 
    RIGHT JOIN requestlist ON requestlist.songID = songlist.ID " ; [/PHP]

    gemacht.

    Ich danke dir für deine Hilfe

  8. Moin bin da recht neu auf dem Gebiet von PHP & MySQL

    Ich möchte da 1 Datensatz über PHP auslesen und mir anzeigen lassen.

    Hab es soweit auch schon hinbekommen.

    Nun kommt das Problem in dem Datensatz der ausgelesen wird gibt es eine Tabelle songID dort steht nur eine Nummer.

    Diese songID müsste ich nun aus einem anderen Datensatz auslesen wo die Informationen über Künstler Titel und so stehen.

    Hier mal mein erstes Ergebniss: http://deinradio.com/abfrage/djadmin.php

    In der 2. Zeile sieht man die SongID dort soll aber der Künstler und der Titel stehen.

    Das befindet sich in einem anderen Datensatz (songlist unter artist und Title)

    Und diese Verbindung bekomme ich nicht hin.

    Google mag mir da auch nicht wirklich weiter helfen bzw ich versteh det nicht was ich da finde.

    Eventuell findet sich ja hier einer der mir helfen kann.

    Hier nun mein Quellcode:

    djadmin.php


    <?php
    require_once ('konfiguration.php');
    $db_link = mysql_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT);

    $db_sel = mysql_select_db( MYSQL_DATENBANK )
    or die("Auswahl der Datenbank fehlgeschlagen");

    $sql = "SELECT * FROM requestlist";

    $db_erg = mysql_query( $sql );
    if ( ! $db_erg )
    {
    die('Ungültige Abfrage: ' . mysql_error());
    }

    echo '<table border="1">';
    while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC))
    {
    echo "<tr>";
    echo "<td>". $zeile['ID'] . "</td>";
    echo "<td>". $zeile['songID'] . "</td>";
    echo "<td>". $zeile['t_stamp'] . "</td>";
    echo "<td>". $zeile['msg'] . "</td>";
    echo "<td>". $zeile['name'] . "</td>";
    echo "<td>". $zeile['status'] . "</td>";
    echo "</tr>";
    }
    echo "</table>";

    mysql_free_result( $db_erg );
    ?>
    [/PHP]

    konfiguration.php

    [PHP]
    <?php
    error_reporting(E_ALL);
    define ( 'MYSQL_HOST', 'localhost' );
    define ( 'MYSQL_BENUTZER', 'dbuser' );
    define ( 'MYSQL_KENNWORT', 'dbpass' );
    define ( 'MYSQL_DATENBANK', 'SAMDB' );
    ?>

    Ans Design mach ich mich später ;)

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...