Lottozahlen einzeln ausgeben

Hallöle,

also mir ist an deinem vorigen Post gerade etwas minimales aufgefallen:

PHP:
$query = "INSERT INTO lotto_pc (`zahl1`, `zahl2`, `zahl3`, `zahl4`, `zahl5`, `zahl6) VALUES ($inserts)";

da gibt es nach "zahl6" kein schließendes " ` ".
Wobei mich das immer wieder fasziniert - solange man nicht mit postgreSQL arbeitet, sind die Anführungsstriche doch eher unnütz, da MySQL nicht so viel Wert darauf legt, oder täusche ich mich da?
 
er gibt nur bei "echo $query;" INSERT INTO lotto_pc ('zahl1', 'zahl2', 'zahl3', 'zahl4', 'zahl5', 'zahl6') VALUES (12,13,15,28,31,34) aus

bei "echo mysql_error();" kommt keine fehlermeldung und doch kein eintrag in die datenbank
hier noch mal den aufbau der tabelle;
CREATE TABLE IF NOT EXISTS `lotto_pc` (
`timestamp_aktuell` varchar(30) NOT NULL,
`timestamp_24` varchar(30) NOT NULL,
`zahl1` int(5) NOT NULL,
`zahl2` int(5) NOT NULL,
`zahl3` int(5) NOT NULL,
`zahl4` int(5) NOT NULL,
`zahl5` int(5) NOT NULL,
`zahl6` int(5) NOT NULL,
`zeit` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 
Zuletzt bearbeitet:
SQL:
INSERT INTO lotto_pc 
  ('zahl1', 'zahl2', 'zahl3', 'zahl4', 'zahl5', 'zahl6') 
VALUES 
  (5,17,26,33,43,47)

Spaltennamen gehören nicht in Singlequotes, sondern zwischen Backticks ;)

SQL:
INSERT INTO `lotto_pc` 
  (`zahl1`, `zahl2`, `zahl3`, `zahl4`, `zahl5`, `zahl6`) 
VALUES 
  (5,17,26,33,43,47);
 
Zuletzt bearbeitet von einem Moderator:
Tja,

dann wirds wohl an einem falschen Datentyp liegen, denn an der Syntax ist jetzt so nichts falsches zu erkennen.
Kann es vllt. sein, dass die Spalten Zahl1-Zahl6 Textfelder (varchar oder ähnliches) sind und keine"Zahlenfelder" (integer oder ähnliches)?
 
nein , sind als int declariert, so wie oben tabellenaufbau geschieben.
aber etwas anderes. habe zum test mal kein Insert, sondern ein update gemacht;
PHP:
<?php  $update = mysql_query("UPDATE lotto_pc Set zahl1 = '1', zahl2 = '2', zahl3 = '3', zahl4 = '4', zahl5 = '5',zahl6 = '6'"); ?>
das funktioniert. die zahlen werden also in datenbank geschrieben.

wenn ich also ein update mache statt einem into wie muß dann der eintrag lauten: denn mit "$inserts" wie bei dem einfügen befehl Into geht es ga nicht.
 
OK, danke habe den Fehler gefunden.
PHP:
for($i=0; $i < 6; $i++) 
{ 
  $inserts .= ($i == 0?'':',') . (int)$Lottozahlen[$i]; 
}
Da bei der 6 gehört eine 7 rein. da die null auch als zahl gezählt wird.
so funktionierts komischerweise:
PHP:
for($i=0; $i < 7; $i++) 
{ 
  $inserts .= ($i == 0?'':',') . (int)$Lottozahlen[$i]; 
}
 
Zuletzt bearbeitet:
Hallo zusammen, ich versuche absolut das gleiche zu machen, sprich die Lottozahlen in einer Datenbank einzufügen, das Problem das ich habe ist allerdings, dass ich danach auch einen Vergleich über die Zahlen laufen lassen möchte. Hat jemand von euch vielleicht einen fertigen Code oder irgendwelche Tipps wo ich so ein fertiges vergleichscode finden kann? Ich werde diesen dann einfach abändern.
Vielen Dank******
 
Zurück