Skrypt, który nadaje kolejny numer


(Gilbertwojaczekkubica) #1

(Damgora) #2

Wydaje mi się, że należy to rozwiązać w php tzn. ilość transakcji trzymać w jakimś pliku albo lepiej bazie i wstawiać odczytaną liczbę powiększoną o jeden w te miejsca (jednocześnie zapisując nową wartość w pliku lub bazie)

Jeżeli gromadzisz informacje o wszystkich transakcjach w tabeli w swojej bazie to możesz odczytać liczbę wierszy i ją powiększyć o jeden.


(Gilbertwojaczekkubica) #3

cayman3_11 nie prowadzę MySQL. Uczyłem się MySQL z kursu, ale nic nie pamiętam możesz mi trochę bardziej przybliżyć co miałbym zrobić?


(mordesku) #4

potrzebujesz skryptu uruchamianego po stronie serwera moze byc php/perl/albo nawet .bat uruchomiony w trybie cgi, który bedzie zapisywał które to odwiedziny ot co,

oto zapytanie tworzące przykładową tabele wszytsko MySQL 5:

CREATE TABLE `transakcje` (

  `id` tinyint(4) NOT NULL auto_increment,

  `t_id` text NOT NULL,

  PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

zapytanie do bazy przez które zapiszesz kolejne zapytanie to

INSERT `transakcje` SET t_id = 'nazwa transakcji'

zakładając ze tabela ma strukture 2 pól pierwsze pole id, pole to przy dodaniu kolejnej pozycji zwieksza wartość o 1 (autoincrement) względem poprzedniego, drugie pole t_id, to pole tekstowe w które możesz sobie wpisać nazwe transakcji żeby sprawdzić numer ostatniej transakcji używamy zapytania:

SELECT * FROM `transakcje` ORDER BY id DESC LIMIT 1

to wszystko możesz wkomponować w PHP oczywiście musisz podać odpowiednią konfigurację serwera MySQL itd. oto przykładowy kod:

mysql_connect(DB_HOST,DB_USER,DB_PASSWORD);

 //gdzie DB_HOST host serwera bazdanych, DB_USER nazwa użytkownika, DB_PASSWORD hasło do bazy

 mysql_select_db(DB_NAME); //DB_NAME nazwa bazy danych


$rezultat=mysql_query("'SELECT * FROM `transakcje` ORDER BY id DESC LIMIT 1"); 

//tutaj wysyłamy zapytanie rezultat zapisujemy w zmiennej $rezultat


if(@mysql_num_rows($rezultat)) //sprawdzamy czy nie został zwrócony błąd

{

$row = mysql_fetch_array($rezultat, MYSQL_ASSOC); //przepisujemy rezultat do tablicy winików


echo $row['id']; //wipisujemy numer ID ostatniej transakcji (mozemy z nim zrobic co nam sie podoba :-)) 


} else echo 'błąd!!!'