help ->eintragsverzögerung @ mysql ?

seppausbayern

Mitglied
moinsen :)
@first login :
in einem simplen script trage ich eine zufällige id in ne tabelle ein...
in der tabelle steht aber als zahl "0" ...
dann mach ich mir nochn script, dass den wert wieder ausgibt...
der wert ist allerdings ein zufällig generierter, wie es sein sollte..
die session hat also gefunzt, der db eintrag ned so recht...
alles was vorher an der stelle in der db stand wird auf 0 gesetzt, aber nix eingetragen...
auch von 0 aus passiert nix...

@2nd login:
in der db steht die zahl vom first login und im script eine neue...



öhhh.... HELP ?! *g*
 
"erst passiert das, dann passiert das, und dann sollte das passieren, passiert aber nich. warum funktioniert das nicht?" <-- und darauf sollen wir ne antwort finden? wir könnten jetzt anfangen, und alle möglichen theorien aufstellen und uns die köpfe zerschlagen - macht hier aber niemand. also wenn du ne gescheite antwort haben willst, dann poste auch
1. was von deinem code und
2. deinen sql-query. dann kann dir auch ein mensch helfen!

matt
 
joa... kein problem :)

also ;
hier die unge"filterten" dateien ;)
login.php :
PHP:
<?  session_start();
//session_register("visualmode");
include("varas.php");
include("show.php");
include("conn.inc");
//start
switch ($is) {

    case "login" :
    $is="default";
    while ($satz=@mysql_fetch_row($query_mysqlask_login)) {
      $mdpass=md5($pass);
      if ( $mdpass == $satz[1] ) {
      session_register("ADMINname");
      session_register("mdpass");
      $daID=@rand(1,1000000);
      $is="default";
      $register="registered";
      session_register("register");
      $register="registered";
      if (mysql_db_query(shydevil_de,$sqlput_login_update_user_set_theid_where_login)){print ('Login erfolgreich.');}
      else {EXIT;}
      session_register("daID");}
      else {print "Ihre Eingabe enthielt ein falsches Passwort oder einen falschen Benutzernamen.";
      $register="unregistered";}}
      break;
    
    default:
    $is="login";
    session_register("is");
    print ('
    <div align="center">
    <form name="loginform" method="post" action="new_two.php?jump=login.php">
    <table border="0">
    <tr>
    <td>
    Login:
    </td>
    <td>
    <input type="text" name="ADMINname" size="15">
    </td>
    </tr>
    <td>
    Passwort:
    </td>
    <td>
    <input type="password" name="pass" size="15">
    </td>
    </tr>
    <tr>
    <td>
    <div align="center"><input type="submit" name="submit" value="   Einloggen   "></div>
    </td>
    </tr>
    </table>
    </form>');}
?>

und nun die conn.inc:
PHP:
<?
/*
conn.inc
*/
//zugangsdaten
$MYSQLserver="SERV";
$MYSQLlogin="LOG";
$MYSQLpass="PASS";
//$db --> Verbindungsvariable
$db=mysql_connect ($MYSQLserver,$MYSQLlogin,$MYSQLpass);
//MySql code
$sqlask="SELECT `login`,`passwort`,`theid` FROM `user` WHERE `login`='$ADMINname' AND `passwort`='$mdpass'";
$sqlask_login="SELECT `login`,`passwort`,`theid` FROM `user` WHERE `login`='$ADMINname' OR `passwort`='$mdpass'";
$sqlput_login_update_user_set_theid_where_login="UPDATE `user` SET `theid`='$daID' WHERE `login`='$ADMINname'";
//Komplette Querys
$query_mysqlask=mysql_db_query(shydevil_de,$sqlask,$db);
$query_mysqlask_login=mysql_db_query(shydevil_de,$sqlask_login,$db);
?>

und die abfrage :
PHP:
<?php
session_start();
include ("varas.php");
include ("show.php");
include ("conn.inc");
// hier die variablen des mysql servers
$MYSQLserver = "SERV";
$MYSQLlogin = "LOG";
$MYSQLpass = "PASS";
//hier die variablen der aktionen
$db = mysql_connect ($MYSQLserver,$MYSQLlogin,$MYSQLpass);
//vars
$online="on";
$offline="off";
$onlinefull="Abrufbereit";
$regok="registered";
//der code


$anzahl_der_spalten = "6";
if ( $register==$regok ) {
                           while ($satz=mysql_fetch_row($query_mysqlask)) { echo $daID;
                           if ( $daID==$satz[2] ) {echo $register;     $ok=="ok";} }}

if ($ok=="ok"){
//das eigendlich skript, für das ich die abfrage brauche.-...


plz help
 
jo, also. ich hab ein problem gefunden. in den abfragen, die du in der 'conn.inc' in eine variable schreibst, enthalten variablen, die erst später deklariert werden. also wird aus
Code:
"UPDATE `user` SET `theid`='$daID' WHERE `login`='$ADMINname'"
einfach
Code:
"UPDATE `user` SET `theid`='' WHERE `login`='eingegebenername'"
und dann ist ja klar, dass dort einfach 0 steht.

lösung:
schreibe die sql-strings am besten direkt in mysql_query() rein, bei 3 is das ja auch nich schwierig.

matt:)
 
Zurück