Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapisywanie do bazy liczb po przecinku
Forum PHP.pl > Forum > PHP
Maciek316
Witam jak zapisać do bazy danych liczby po przecinku?
Chcę żeby było np 1,1,1,1.
Mam takie zapytanie żeby mi pobierało z bazy danych 4 rekordy, a potem chce je wgrać do drugiej tabeli.
  1. $liberty= mysql_query("select * from liberty ORDER BY RAND() LIMIT 0,4");

Pobiera mi 4 rekordy, ale potem nie mam pojęcia jak to zapisać.
pitu
  1.  
  2. if ($liberty) {
  3. while ($dane = mysql_fetch_array($liberty)) {
  4. $wynik .=$dane["nazwa_kolumny"].','; //nazwa kolumny = nazwa kolumny, z której chcesz dane
  5. }
  6. $wynik = substr($wynik, 0, -1);
  7.  
  8. mysql_query("INSERT INTO nazwa_tabeli (nazwa_kolumny) VALUES ($wynik);");
  9. }
  10.  
Maciek316
Niestety wyskoczył mi błąd (zapytanie nie działało więc dałem mysql_error):
  1. Column count doesn't match value count at row 1

Poczytałem o tym, i pisało że błąd wyskakuje wtedy, gdy wymieniłem więcej kolumn niż mam danych.
Ale przecież ja wymieniłem 1 do 1.

  1. mysql_query("INSERT INTO users (gra) VALUES ($wynik)")or die (mysql_error());

phpion
Dodaj '. Teraz zapewne ciąg 1,1,1 traktowany jest jako 3 osobne wartości, a wstawiasz je do 1 kolumny.
  1. mysql_query("INSERT INTO users (gra) VALUES ('$wynik')")or die (mysql_error());
Maciek316
Hmm, czyli dobrze myślałem biggrin.gif
Jednak, gdy to zrobiłem wyskoczył kolejny błąd:
  1. Duplicate entry '' for key 'email'

pitu
Na kolumnę email masz pewnie założony unikalny klucz. Każdy rekord musi posiadać unikalną wartość. W twoim przypadku próbujesz dodać rekord z pustą wartością, która za pewne występuje w innym rekordzie.
Maciek316
czyli mam każdej tabelce nadać unikalną wartość?
mmmmmmm
  1. INSERT INTO nowa_tabela(pole) SELECT GROUP_CONCAT(pole) FROM (SELECT pole FROM tabela ORDER BY Rand() LIMIT 4) X
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.