Witam.
Moja przygoda z PHP rozpoczęła się niedawno, więc moje pytanie może się wydawać banalne - ale sam sobie nie mogę dać rady. Otóż postanowiłem stworzyć stronę na której będzie się znajdował prosty test składający się z kilku pytań zapisanych w bazie. Udało mi się znaleźć gotowy skrypt, niestety mam problem z jego działaniem, a raczej jego nie działaniem. Chodzi mi dokładnie o ten test -
http://www.widgetmonkey.com/zip/quizv1.0.zip. Wykonałem wszystko tak jest zostało zapisane w pliku notes i mimo tego test nie działa. Żeby dokładnie przedstawić sytuację wklejam zawartość plików z tego testu:
plik config.php (oczywiście zmodyfikowałem go odpowiednio)
<?php
$database = \"database\";
$user = \"user\";
$pass = \"haslo\";
$hostname = \"mysql.60free.ovh.org\";
$table = \"quiz\";
?>
plik contentdb.php
<?php
include(\"config.php\");
?>
plik editquiz.php
<?php
[b]Admin area - edit the quiz[/b]
include(\"contentdb.php\");
if($submit)
{
$sql = \"INSERT INTO $table (question, opt1, opt2, opt3, answer) VALUES ('$question','$opt1','$opt2','$opt3','$answer')\";
Question added to quiz.
\";
include \"qinsert.php\";
}
else if($update)
{
$sql = \"UPDATE $table SET question='$question',opt1='$opt1',opt2='$opt2',opt3='$opt3',answer='$answer' WHERE id=$id\";
The quiz has been succesfully updated.
\n\";
}
else if($id)
{
$result = mysql_query(\"SELECT * FROM $table WHERE id=$id\",$db); ?>
}
else
{
?>
}
?>
<a href="\"\"\"editquizlist.php\"\"\"">Back to list of quiz questions
plik editquizlist.php
<?php
[b]Admin area - edit the quiz[/b]
include(\"contentdb.php\");
$result = mysql_query(\"SELECT id, question FROM $table ORDER BY id\",$db);
{
$id = $row[\"id\"];
$question = $row[\"question\"];
if ($alternate == \"1\") {
$color = \"#ffffff\";
$alternate = \"2\";
}
else {
$color = \"#efefef\";
$alternate = \"1\";
}
echo \"$id:$question[ <a href="\"\"editquiz.php?id=$id\"\"">edit ][ <a href="\"\"deletequiz.php?id=$id\"" onClick="\"\"return\" confirm('Are=\"\" you=\"\" sure?')\"\"=\"\"">delete ]\"; }
?>
<a href="\"\"\"editquiz.php\"\"\"">Add a new question to the quiz
<a href="\"\"\"quizinfo.php\"\"\"">See the full quiz table
plik quiz1.php
<?php
//copyright widgetmonkey.com 2001
include(\"contentdb.php\");
$display = mysql_query(\"SELECT * FROM $table ORDER BY id\",$db); if (!$submit) {
$id = $row[\"id\"];
$question = $row[\"question\"];
$opt1 = $row[\"opt1\"];
$opt2 = $row[\"opt2\"];
$opt3 = $row[\"opt3\"];
$answer = $row[\"answer\"];
[b]$question[/b]\";
echo \"$opt1 $opt2 $opt3 \";
}
}
elseif ($submit)
{
$score = 0;
{
$answer = $result[\"answer\"];
$q = $result[\"q\"];
if ($q == $answer)
{
$score++;
}
}
[b]You scored $score out of $total[/b]\";
if ($score == $total) {
echo \"Congratulations! You got every question right!\"; }
elseif ($score/$total < 0.34) {
echo \"Oh dear. Not the best score, but don't worry, it's only a quiz.\"; }
elseif ($score/$total > 0.67) {
echo \"Well done! You certainly know your stuff.\"; }
else {
echo \"Not bad - but there were a few that caught you out!\"; }
\";
Here are the answers:\";
$display = mysql_query(\"SELECT * FROM $table ORDER BY id\",$db);
$question = $row[\"question\"];
$answer = $row[\"answer\"];
$q = $row[\"q\"];
$question\";
if ($q == $answer)
{
echo \"»you answered ${$q}, which is correct\"; }
elseif ($q == \"\") {
echo \"»you didn't select an answer. The answer is $answer\"; }
else {
echo \"»you answered ${$q}. The answer is $answer\"; }
}
}
?>
Oczywiscie odpowiednia tabela o nazwie quiz została utworzona. Problemy są tego typu. Chcąc dodać pytanie poprzez editquiz.php nic się nie dodaje. Dodatkowo po odpaleniu editquizlist.php pojawiają się dwa błędy:
Kod
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/a/m/i/amigoksg/www/quiz/editquizlist.php on line 13
Kod
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/a/m/i/amigoksg/www/quiz/editquizlist.php on line 16
Probowałem takze ręcznie poprzez phpmyadmin dodać pytania do tabeli quiz. Po dodaniu ich i odpaleniu quiz1.php występują następujące błędy:
Kod
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/a/m/i/amigoksg/www/quiz/quiz1.php on line 7
Kod
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/a/m/i/amigoksg/www/quiz/quiz1.php on line 15
Wydaje mi się, że funkcje mysql_query i mysql_fetch_array są dobrze użyte a jednak pojawiają się te w/w błędy. Dlatego pytam tutaj ,bo już nie wiem co może być źle. Pozdrawiam.
Ten post edytował misiol 15.03.2008, 14:21:22