Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Programik do testów
huka
post 5.04.2004, 13:27:47
Post #1





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Siemnko

Mam problem z napisaniem skryptu php.Robie taki programik do tworzenia testów i ich rozwiązywania.Troche się już w tym pogubiłem bo musze napisać program do tworzenia testów wielokrotnego wyboru.
Problem polega na tym, że nie bardzo wiem jak napisać taki programik. Potrafie dodawać pytania do bazy danych ale mam problem z dodawaniem odpowiedzi do tego pytania. Chodzi o to że nie wiem jak przypisać dwie lub więcej odpowiedzi do tego pytania i zapisać je w bazie(w tym wszystkie mogą być prawidłowe).
Jak macie jakieś propozycje to podeślijcie.
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
kszychu
post 5.04.2004, 13:30:20
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Propozycja tabeli odpowiedzi:
pola: id, id_pytania, tresc_odpowiedzi, poprawnosc.

No i dodajesz odpowiedzi, ile tylko chcesz, a to, czy odpowiedz jest poprawna czy nie zalatwia ci pole poprawnosc (0 - niepoprawna lub 1 - poprawna).


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
huka
post 5.04.2004, 13:46:48
Post #3





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


No tak...ale jak później będe już tworzył formularz do rozwiązywania testów to w jaki sposób mam przypisać do pytania odpowiedzi?
Go to the top of the page
+Quote Post
kszychu
post 5.04.2004, 13:48:55
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


[sql:1:4a5037bd9d]SELECT * FROM odpowiedzi WHERE id_pytania = $id_pytania[/sql:1:4a5037bd9d]


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
huka
post 5.04.2004, 13:51:51
Post #5





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Jeszcze jedno, wiesz może w jaki sposób wyświetlić w formularzu wszystkie odpowiedzi do danego pytania(niezależnie od tego czy są poprawne). Chodzi o to że chcę stworzyć formularz z polami wyboru odpowiewdzi.
Go to the top of the page
+Quote Post
kszychu
post 5.04.2004, 13:55:37
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


No to napisałem Ci wyżej, jak wyszukać wszystkie odpowiedzi do danego pytania. Później tworzysz pola typu checkbox, przypisując im id odpowiedzi i treść odpowiedzi. Przy sprawdzaniu zaś, sprwadzasz tylko, czy dana odpowiedź ma poprawność 0 czy 1. I wszystko.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
huka
post 5.04.2004, 13:58:07
Post #7





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Aha...
A wiesz może jak zaimportować pytania i odpowiedzi z pliku txt.?
Czy wogle jest taka możliwość?
Go to the top of the page
+Quote Post
kszychu
post 5.04.2004, 14:00:45
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Oczywiście, że jest. Sposób importu zależy tylko od budowy takiego pliku.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
huka
post 5.04.2004, 14:13:43
Post #9





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


To fajnie.
A masz może jakiś pomysł?
Go to the top of the page
+Quote Post
kszychu
post 5.04.2004, 14:19:37
Post #10





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


8O Myślałem, że ty masz to na plikach. Ale jeśli szukasz rozwiązania: pliki czy baza, to zdecydowanie polecam bazę. A rozwiązań poszukaj sam smile.gif


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
huka
post 5.04.2004, 16:53:59
Post #11





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Słuchaj możesz podrzucić mi jescze propozycje tabeli pytania?
Go to the top of the page
+Quote Post
kszychu
post 6.04.2004, 09:08:39
Post #12





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


id, tresc może jeszcze jakaś data_dodania.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
huka
post 6.04.2004, 18:33:38
Post #13





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Pojawił się jeszcze jeden problem...
Podczas dodawania pytania i odpowiedzi do tego pytania jako wartość id_pytania za każdym razem wstawia mi wartość 0. Nie bardzo wiem dlaczego tak się dzieje.
Nie wiem jak napisać skrypt żeby w tabeli odpowiedzi było coś takiego:

id id_pytania odpowiedz poprawnosc
1 50 co kolwiek 1
2 50 co kolwiek 0
3 50 co kolwiek 1
4 50 co kolwiek 1
5 51 co kolwiek 0
6 51 co kolwiek 1

i tak dalej...

Czekam na jakąś propozycje.
Go to the top of the page
+Quote Post
Majdan
post 6.04.2004, 18:47:40
Post #14





Grupa: Zarejestrowani
Postów: 445
Pomógł: 0
Dołączył: 21.12.2003
Skąd: Tomaszów Lubelski

Ostrzeżenie: (10%)
X----


Pole 'id_pytania' powinno być 'AUTO_INCREMENT'. Wtedy w pole wpisujes 'NULL', a ono automatycznie dodaje o jeden większą od aktualnie zapisanej.


--------------------
Go to the top of the page
+Quote Post
kszychu
post 7.04.2004, 09:04:29
Post #15





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Cytat
Pole 'id_pytania' powinno być 'AUTO_INCREMENT'. Wtedy w pole wpisujes 'NULL', a ono automatycznie dodaje o jeden większą od aktualnie zapisanej.

I co wtedy uzyskasz?... Przemyśl to, mówimy o tabeli odpowiedzi.

A co do problemu z dodawaniem id_pytania, pokaż fragment skryptu, którym to dodajesz, bo tak to nie bardzo wiem co może być nie tak.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
huka
post 7.04.2004, 11:13:12
Post #16





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


tak wygląda skrypt dodawania odpowiedzi:[php:1:00c8c782c6]<?php

$db_name = "baza";
$con = mysql_connect("localhost") or die("Blad połączenia");
$db = mysql_select_db($db_name, $con) or die("Otwarcie tabeli");
$sql = "insert into Odpowiedzi values('null','$ID_pyt','$Odpowiedz')";
$result = mysql_query($sql, $con) or die("Polaczenie z baza nie udalo sie");
echo "Dane zostały zapisane do bazy";
echo "<form action=dodaj_pytanie.html><input type=submit value=Powrot></form>";

a tak tabela odpowiedzi:
[sql:1:00c8c782c6]
CREATE TABLE Odpowiedzi(
ID_odpowiedzi int(5) unsigned NOT NULL auto_increment,
ID_pyt int(5) NOT NULL,
Odpowiedz varchar(35) NOT NULL,
PRIMARY KEY (ID_odpowiedzi),
FOREIGN KEY (ID_pyt) REFERENCES Pytania(ID_pytania) ON DELETE CASCADE
) TYPE=InnoDB;[/sql:1:00c8c782c6][/code]
?>[/php:1:00c8c782c6]
Go to the top of the page
+Quote Post
kszychu
post 7.04.2004, 11:18:50
Post #17





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


A $ID_pyt jak odczytujesz? Bo czuję, że z tym jest właśnie problem.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
huka
post 7.04.2004, 11:20:45
Post #18





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Do tabeli odpowiedzi dodałem jeszcze, tak jak pisałeś rekord poprawnosc który zawiera wartość odpowiedzi (0-niepoprawna 1-poprawna).
Go to the top of the page
+Quote Post
huka
post 7.04.2004, 11:24:33
Post #19





Grupa: Zarejestrowani
Postów: 96
Pomógł: 0
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


ID_pyt to jest klucz obcy, za pomocą którego powiązałem tabele pytania z tabelą odpowiedzi.
Co bym nie wstawił to i tak za każdym razem wpisuje mi do tabeli 0.
Właśnie nie bardzo wiem jak to zmienić.
Go to the top of the page
+Quote Post
kszychu
post 7.04.2004, 11:28:45
Post #20





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Jasne, tylko jak i skąd pobierasz wartość, którą przypisujesz zmiennej $ID_pyt, którą to zmienną wstawiasz później do inserta?


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 07:35