kostenloser Webspace werbefrei: lima-city


Befehl zur Datenbankaktualisierung

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    zocca

    zocca hat kostenlosen Webspace.

    Hi,

    ich habe folgendes Problem:

    Ich füge mit einem Button-Klick den Text von 2 Edit-Feldern in eine SQL-Datenbank, der Inhalt wird jedoch erst nach einer Zeit (ca. 10-20 Sekunden) aktualisiert.

    Gibt es eine Möglichkeit die Datenbank direkt aktualisieren zu lassen, z. B. in dem ich irgendeinen Befehl zur Datenbankaktualisierung ins Button-Klick einfüge?

    („Seite aktualisieren“ will ich übrigens meiden, dabei erscheint nämlich immer ein Hinweisfenster und meist ist Datenbank danach auch noch nicht aktualisiert.)


    DANKE
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. n********r


    Hi,

    ich habe folgendes Problem:

    Ich füge mit einem Button-Klick den Text von 2 Edit-Feldern in eine SQL-Datenbank, der Inhalt wird jedoch erst nach einer Zeit (ca. 10-20 Sekunden) aktualisiert.

    Gibt es eine Möglichkeit die Datenbank direkt aktualisieren zu lassen, z. B. in dem ich irgendeinen Befehl zur Datenbankaktualisierung ins Button-Klick einfüge?

    („Seite aktualisieren“ will ich übrigens meiden, dabei erscheint nämlich immer ein Hinweisfenster und meist ist Datenbank danach auch noch nicht aktualisiert.)


    DANKE


    Warum schickst du das Formular nicht an eine seite.
    Dort fürhst du den UPDATE befehl aus und gehts dann wieder zurück und lässt euen Nachricht ausgeben das es akutalisiert wurde.
  4. Autor dieses Themas

    zocca

    zocca hat kostenlosen Webspace.


    Warum schickst du das Formular nicht an eine seite.
    Dort fürhst du den UPDATE befehl aus und gehts dann wieder zurück und lässt euen Nachricht ausgeben das es akutalisiert wurde.


    wie würde so was denn aussehen?
    Weiß nicht genau wie ich diese Idee (quelltextmäßig) umsetzen kann... :confused:

    ... die Möglichkeit das man die Datenbank einfach durch einen Befehl aktualisieren kann gibt es nicht?

    Danke,
    mfg
  5. n********r

    <?php
    if(isset($_GET['ready']))
    {
    echo 'wurde aktualisiert';
    }
    ?>
    <form action="update.php" method="post">
    Hier das Forumlar zum updaten rein
    </form>


    update.php
    <?php
    
    $update = mysql_query("UPDATE TABELLE SET ......") OR die(mysql_error());
    
    header ('Location: forma.php?ready');
    ?>
  6. Du musst lediglich darauf achten, dass der UPDATE Befehl vor dem SELECT Befehl, also vor dem Auslesen der Daten, an den MySQL Server gesendet wird.

    MfG Lucas
  7. Autor dieses Themas

    zocca

    zocca hat kostenlosen Webspace.

    lucas9991 schrieb:
    Du musst lediglich darauf achten, dass der UPDATE Befehl vor dem SELECT Befehl, also vor dem Auslesen der Daten, an den MySQL Server gesendet wird.

    MfG Lucas



    hhmm, wie schreib ich das denn jetzt wenn ich das UPDATE vor das SELECT bringen will, ich kenn nur diese 2 Varianten:

    <?php 
    
     include("dbconnect.php");
    
    $abfrage = "SELECT * FROM links"; 
           //bzw.:
    $abfrage = ("UPDATE kundendaten SET wert = 'Test' WHERE id = '1'");
    
    $ergebnis = mysql_query($abfrage);     
    
     while($row = mysql_fetch_object($ergebnis)) 
     {
     echo $row -> Ueberschrift;
     }  ?>



    Wie bring ich nun das UPDATE vor das SELECT?
    Kann doch immer nur eins der beiden verwenden, oder?
    Gibt es vielleicht eine Möglichkeit wie man mein Beispiel umstellen kann, so dass es nach dem "UPDATE vor SELECT"-Prinzip funktioniert?

    Danke,
    mfg

    Beitrag geaendert: 16.4.2007 14:30:18 von zocca

    Beitrag geaendert: 16.4.2007 14:47:40 von zocca
  8. n********r


    lucas9991 schrieb:
    Du musst lediglich darauf achten, dass der UPDATE Befehl vor dem SELECT Befehl, also vor dem Auslesen der Daten, an den MySQL Server gesendet wird.

    MfG Lucas



    hhmm, wie schreib ich das denn jetzt wenn ich das UPDATE vor das SELECT bringen will, ich kenn nur diese 2 Varianten:

    <?php 
    
     include("dbconnect.php");
    
    $abfrage = "SELECT * FROM links"; 
           //bzw.:
    $abfrage = ("UPDATE kundendaten SET wert = 'Test' WHERE id = '1'");
    
    $ergebnis = mysql_query($abfrage);     
    
     while($row = mysql_fetch_object($ergebnis)) 
     {
     echo $row -> Ueberschrift;
     }  ?>



    Wie bring ich nun das UPDATE vor das SELECT?
    Kann doch immer nur eins der beiden verwenden, oder?
    Gibt es vielleicht eine Möglichkeit wie man mein Beispiel umstellen kann, so dass es nach dem "UPDATE vor SELECT"-Prinzip funktioniert?

    Danke,
    mfg

    Beitrag geaendert: 16.4.2007 14:30:18 von zocca

    Beitrag geaendert: 16.4.2007 14:47:40 von zocca


    Für ein Update brauchst du nur das hier :

    <?php 
    
     include("dbconnect.php");
    
    
    $abfrage = ("UPDATE kundendaten SET wert = 'Test' WHERE id = '1'");
    
    $ergebnis = mysql_query($abfrage);     
     ?>
  9. Autor dieses Themas

    zocca

    zocca hat kostenlosen Webspace.

    OK, das hab ich auch jetzt so stehen, aber trotzdem wird die Datenbank erst nach wenigen Momenten und nicht direkt aktualisiert...

    Das UPDATE führt schon das aus was es soll, jedoch bleibt die Datenbank nach dem Ausführen dieses Befehls noch längere Zeit ungeändert.

    Wie kann ich das also nun beheben?
  10. n********r


    OK, das hab ich auch jetzt so stehen, aber trotzdem wird die Datenbank erst nach wenigen Momenten und nicht direkt aktualisiert...

    Das UPDATE führt schon das aus was es soll, jedoch bleibt die Datenbank nach dem Ausführen dieses Befehls noch längere Zeit ungeändert.

    Wie kann ich das also nun beheben?


    LOL.
    Bist du bei Lima auf der DB oder Locale auf deinem Homerechner?
  11. mysql_query ('UPDATE `quak`'); // UPDATE wird vor SELECT an den MySQL Server gesendet
    mysql_query ('SELECT * FROM `quak`');

    Weiterhin solltest du mal die Seite mit STRG+F5 laden, bzw. daran denken, dass die lima Seiten gecachet werden!
  12. Also sorry wenn ich hier mal einhake, aber Datenbanken werden NIEE gecacht.
    Falls du trotzdem zu einem falschen Ergebnis auf deiner Seite kommst, liegt das evtl. an von dir selbst gecachten Werten.

    Grüßle

    Nachtrag: Habe mal kurz ein Script gemacht indem kurz hintereinander SELECT,UPDATE SELECT ausgeführt wird und bei Update die Microsekunden/Sekunden gespeichert werden... das zweite Select hat IMMER ein aktualisierten Wert.

    <?php
    	$conn = mysql_connect('localhost','root','') OR DIE ("Keine Verbindung zum DB-Server.");
    	mysql_select_db('test') or die("Auswahl der Datenbank fehlgeschlagen");
    
    	$query = "SELECT * from gaga where id=2;";
    	$res = mysql_query($query) or die("Anfrage fehlgeschlagen: ".mysql_error($conn));
    
    	while($row = mysql_fetch_row($res)) {
    		echo "id:".$row[0]."   txt:".$row[1]."\n<br>";
    	}
    
    	$tt = microtime();
    	$query = sprintf("UPDATE gaga SET txt='%s' where id=2;", $tt);
    	$res = mysql_query($query) or die("Anfrage fehlgeschlagen: ".mysql_error($conn));
    
    	$query = "SELECT * from gaga where id=2;";
    	$res = mysql_query($query) or die("Anfrage fehlgeschlagen: ".mysql_error($conn));
    
    	while($row = mysql_fetch_row($res)) {
    		echo "id:".$row[0]."   txt:".$row[1];
    	}
    
    	if (is_resource($res)) {
    		mysql_free_result($res);
    	}
    	mysql_close($conn);
    ?>


    Grüßle

    Beitrag geaendert: 16.4.2007 17:10:19 von scout
  13. Autor dieses Themas

    zocca

    zocca hat kostenlosen Webspace.

    KLAPPT!!

    VIELEN DANK FÜR EUERE HILFE!!!

    Hab einfach den Befehl mit dem UPDATE vor dem mit dem SELECT gesetzt und voila: Hat funktioniert.

    Schönen Tag noch,
    Danke für die Geduld,
    mfg
  14. n********r


    KLAPPT!!

    VIELEN DANK FÜR EUERE HILFE!!!

    Hab einfach den Befehl mit dem UPDATE vor dem mit dem SELECT gesetzt und voila: Hat funktioniert.

    Schönen Tag noch,
    Danke für die Geduld,
    mfg


    Vielleicht hättest du den ersten Beitrag von Lucas mal lesen sollen.
    Dann hättest du es auch früher gewusst.
  15. Autor dieses Themas

    zocca

    zocca hat kostenlosen Webspace.

    Ja, ich weiß, hab dann auch was ausprobiert mit dem tauschen der beiden, ist aber fehlgeschlagen (Hab irgendwas falsch gemacht und gedacht es würde in meinem Fall nicht funktionieren).
    Habs eben nochmal versucht auf eine andere Art und Weise und dann hats geklappt.

    Sorry, aber nochmals DANKE. :thumb:
  16. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!