Suche auf lima-city
-
in: MySQL UPDATE mehrere Zeilen ?
geschrieben von scusu
hmmm, da war mein Beispiel oben wohl nicht passend,
ich will zwar UPDATE in jeweils der gleichen Spalte
aber je Zeile mit unterschiedlichem Wert
ich habe ein Array mit KEY = id der Zeile und VALUE = der neue Wert
und mache es bisher so:
$neue_werte = array ( '1' => '12345', '2' => 'abcde', '3' => 'xyz123'); foreach($neue_werte as $id => $neuer_wert ) { $sql = "UPDATE table_x SET wert = '".$neuer_wert"' WHERE id= '".$id."'"; $res = mysql_query($sql); }
wie baue ich das jetzt um zu ON DUPLICATE KEY UPDATE?
-
in: string Datum Zeit
geschrieben von scusu
ist der Wert von $_POST['Erstellt'] ein TimeStamp ???
dann evtl so:
$save_datum = date('Y-m-d H:i:s',$_POST['Erstellt']); $save_name = mysql_real_escape_string(trim($_POST['Name'])); $save_email = mysql_real_escape_string(trim($_POST['Email'])); $sql="INSERT INTO deine_tabelle (`Name`, `Email`, `Datum`) VALUES ('".$save_name."', '".$save_email."', '".$save_datum."')"; ...
also aus dem Timestamp ein Datum-String machen.
-
in: MySQL UPDATE mehrere Zeilen ?
geschrieben von scusu
Hallo
@hpage ... ja, mit einer Schleife mache ich es ja schon jetzt
aber dann muss ich je bei jedem Durchlauf ein MySQL-Query neu senden,
aber ich suche ja was, das mit einer Anfrage geht .
@wrertzu ... Danke, das klingt gut ... DUPLICATE KEY UPDATE ...
werde ich mal ausprobieren ... aber in der MySQL Doku steht
es so
anstattUPDATE c=VALUES(a)+VALUES(b)
UPDATE c=VALUES(a),VALUES(b)
??? also mit + (Plus) anstatt mit , (Komma)
INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6) ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);
naja. ... probieren geht über studieren :)
-
in: MySQL UPDATE mehrere Zeilen ?
geschrieben von scusu
Hallo
bei MySQL INSERT kann man ja ganz einfach mehrere Zeilen eintragen
$sql = "INSERT INTO table_x (a,b,c) VALUES (1,2,3), (4,5,6), (7,8,9) ";
geht das auch bei UPDATE .... ???
$sql1 = "UPDATE table_x SET wert = '".$neuer_wert"' WHERE id= '1'"; $sql2 = "UPDATE table_x SET wert = '".$neuer_wert"' WHERE id= '2'"; $sql3 = "UPDATE table_x SET wert = '".$neuer_wert"' WHERE id= '3'";
kann man UPDATE für mehrere Zeilen auch in eine Abfrage zusammenfassen,
ähnlich wie bei INSERT ... ?
-
in: Jquery Aktualisierung mit dynamischem Timer
geschrieben von scusu
Hallo
Du könntes einfach einen Meta-Refresh machen
<meta http-equiv="refresh" content="180; URL=index.php" />
damit wird die Seite alle x Sekunden (180 = 3 Minuten) neu geladen
Aber dann kommt der Reload bestimmt mitten in einem Ausgabe Intervall.
oder mit Javascript noch einen neuen Zähler
einfügenvar z=0;
der zählt
hoch, wieviele gesamte Durchläufe waren,z++;
und wenn eine bestimmte Anzahl
erreicht ist,var r=3;
dann wird die Seite neu geladen.
ungefähr so ...
var i=0; var z=0; // --- neuer Zaehler Durchlauf var r=3; // --- reload nach Durchlaeufe function runloop(i) { if (rfx_ids.length <= i) { i=0; z++; } if (z == r) { window.location.reload(); } else { if (i == (rfx_ids.length-1)) { j=0; } else { j = (i+1); } $("#refresh").load("refresh.php?id=" + rfx_ids[j] + "&time=" + rfx_time[j] + "&ms=" + new Date().getTime()); i++; setTimeout(function(){runloop(i);}, rfx_time[j]); ] }
... nur ne Idee, nicht getestet ... keine Ahnung ob
funktioniert,window.location.reload();