Avatar billede udvikler Nybegynder
13. april 2005 - 14:58 Der er 33 kommentarer og
1 løsning

én enkel fejl i gæstebog

Hejsa..

Jeg har fået hjælp med nogle mysql koder herinde fra, men jeg mangler sog stadig at rette én enkel fejl.. Kan bare ikk finde ud af hvad fejlen er: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /web/www/frac/users/lilo/skriv.php on line 55

Det er i dette script: if(mysql_num_rows($query)!=0) {

På forhånd tak.
Avatar billede Slettet bruger
13. april 2005 - 15:36 #1
-aco- Fejlen er der hvor du definerer querien.
Avatar billede udvikler Nybegynder
13. april 2005 - 15:53 #2
OKay, men hvordan ordner jeg det ?
Avatar billede barklund Nybegynder
13. april 2005 - 15:53 #3
Retter din sql fejl eller finder den ved at skrive or die efter din mysql_query - som man altid gør.
Avatar billede barklund Nybegynder
13. april 2005 - 15:54 #4
Og som du har fået at vide hver gang i dine sidste mange spørgsmål! Du må da lære det på et tidspunkt?
Avatar billede Slettet bruger
13. april 2005 - 15:55 #5
Jeg har også lige prøvet at hjælpe dig i et andet spørgsmål -aco-. Jeg må indrømme at jeg mister lysten til at hjælpe dig, når du ikke prøver nogle af mine foreslag, men i stedet opretter et nyt spørgsmål og dropper det gamle uden at give lyd fra dig.
Avatar billede udvikler Nybegynder
13. april 2005 - 15:55 #6
Jah, men nu handler det jo ikk om en mysql_query eller hvad.. er helt på bar bund.. Håber i kan uddybe jer lidt :)
Avatar billede udvikler Nybegynder
13. april 2005 - 15:56 #7
wicez: Jeg har prøvet dine ting af. Jeg har også skrevet i begyndelsen af dette inlæg at jeg har fået rettet nogle fejl, men der kommer nogle nye frem.!!
Avatar billede Slettet bruger
13. april 2005 - 15:57 #8
Prøv at skrive fra linie 50 til 55 her.
Avatar billede udvikler Nybegynder
13. april 2005 - 15:59 #9
Der er omkring 60 så jeg kan da også lige skrive de sidste 5 med ;)

<center>

<br><br><br><br>
<form action="skriv.php" method="post">
<textarea rows="10" cols="50" name="besked"></textarea>
<p>
<input type="submit" value="send">
</form>
<center>



<center>
<?php
  echo $_REQUEST["besked"]."<hr>";
?>
<center>





<?php

$host = "localhost";
$user = "lilo";
$pass = "kode";
$db = "lilo";   

$connect = mysql_connect($host, $user, $pass);
mysql_select_db($db);





if(is_array($HTTP_POST_VARS)) {
$Besked = $HTTP_POST_VARS['Besked'];
} elseif (is_array($_POST)) {
}


function skriv_i_gbog($Besked) {


$sql = "insert into gaestebog(besked) values('". $besked ."')";



}

skriv_i_gbog(addslashes($Besked));

$query = mysql_query("SELECT * FROM gaestebog");
if(mysql_num_rows($query)!=0) {
while($row = mysql_fetch_assoc($query));
{
echo $row['besked'];
}
}

?>
Avatar billede barklund Nybegynder
13. april 2005 - 16:03 #10
-aco-:

Forstå nu kort og gode:

Samtlige steder, hvor du har en mysql_query, dergør et eller andet, skal du efter slut-parentesen skrive " or die(mysql_error())".

Det har du _ikke_ gjort i dit script og det _er_ det, der forårsager din fejl!

Er vi enige om, at du ikke opretter endnu et spørgsmål, hvor vi skal svare det samme?
Avatar billede udvikler Nybegynder
13. april 2005 - 16:07 #11
Hvis du mener Denne linie: $query = mysql_query("SELECT * FROM gaestebog");

Så har jeg gjort det, det virkede ikk.. underligt nok..

Den skulle se sådan ud ikk? : $query = mysql_query("or die")
Avatar billede udvikler Nybegynder
13. april 2005 - 16:08 #12
eller hvad? kan ikk huske hele koden.. altså or die koden
Avatar billede Slettet bruger
13. april 2005 - 16:09 #13
Se i dit foregående spørgsmål -aco- jeg har skrevet hvordan det skal se ud


$query = mysql_query("SELECT * FROM gaestebog") or die(mysql_error() .' Fejlen var i den sidste query');
Avatar billede barklund Nybegynder
13. april 2005 - 16:10 #14
Så du er slet ikke i stand til at huske hvad du fik at vide i går? Og du kan ikke gå tilbage og kigge?

Jeg vil gerne hjælpe dig med et link:

http://www.eksperten.dk/spm/609155

--
Morten Barklund
Avatar billede Slettet bruger
13. april 2005 - 16:11 #15
Det er da umuligt at "glemme" noget der står på skrift?
Avatar billede Slettet bruger
13. april 2005 - 16:11 #16
... ja ok det var vi enige om
Avatar billede udvikler Nybegynder
13. april 2005 - 16:12 #17
Hvis jeg gør som wicez sagde, så kommer dette frem:

Parse error: parse error, unexpected T_IF in /web/www/frac/users/lilo/skriv.php on line 55
Avatar billede Slettet bruger
13. april 2005 - 16:12 #18
Det er sikkert fordi du ikke har afsluttet med ";"
Avatar billede Slettet bruger
13. april 2005 - 16:13 #19
men endnu engang er det smartest hvis du lige giver os de sidste 5 linier
Avatar billede barklund Nybegynder
13. april 2005 - 16:15 #20
-aco-, har du selv lavet den gæstebog? Du er ikke i stand til at tilføje et minimum af debugging, så jeg tvivler... :/
Avatar billede udvikler Nybegynder
13. april 2005 - 16:15 #21
skriv_i_gbog(addslashes($Besked));

$query = mysql_query("SELECT * FROM gaestebog") or die(mysql_error();
if(mysql_num_rows($query)!=0) {
while($row = mysql_fetch_assoc($query));
{
echo $row['besked'];
}
}

Den siger der er et ; for meget... Men hvor ?
Avatar billede udvikler Nybegynder
13. april 2005 - 16:16 #22
barklund: Jep, selv lavet det hele.. Det er kun mysql jeg ikk har så forfærdelig meget forstand på... Meeen man kan jo heller ikk alt.. :)
Avatar billede Slettet bruger
13. april 2005 - 16:18 #23
$query = mysql_query("SELECT * FROM gaestebog") or die(mysql_error());
if(mysql_num_rows($query)!=0) {
while($row = mysql_fetch_assoc($query));
{
echo $row['besked'];
}
}
Avatar billede Slettet bruger
13. april 2005 - 16:18 #24
nej man kan ikke alt.. :S du manglede at afslutte en '(' med en ')'
Avatar billede Slettet bruger
13. april 2005 - 16:21 #25
-aco-: Det eneste der har noget at gøre med mysql i dette script, er din mysql_query(""), resten er ren php med dertilhørende funktioner
Avatar billede udvikler Nybegynder
13. april 2005 - 16:21 #26
Sådan. nu virker det...

Har jeg forstået det forkert eller skal man ikk kun oprette en tabel der hedder besked som selvfølgelig skal være sat til 'text' og ellers skal man ikke oprette nogle tabeller i mit tilfælde (vil kun have beskeden med intet andet)
Men når jeg går ind i gæstebogen, så står der: Table 'lilo.gaestebog' doesn't exist
Avatar billede udvikler Nybegynder
13. april 2005 - 16:23 #27
wicez: Okay, men er heller ikke haj til php - men synes nu at jeg alligevel kan meget.. (begyndte for ca. næsten en uge siden)
Avatar billede Slettet bruger
13. april 2005 - 16:26 #28
Det betyder at der ikke eksisterer en tabel med navnet "gaestebog" i din database "lilo". Enten har du oprettet en tabel med en lidt andet navn (stavefejl etc) eller også har du ingen tabel overhovedet med det navn.
Du kan naturligvis også være kommet til at oprette tabellen "gaestebog" i en anden database. Hvilket jeg dog tvivler på hvis du har et frac.dk domæne.
Avatar billede udvikler Nybegynder
13. april 2005 - 16:32 #29
Jeps har frac som domæne.. men jeg har oprettet en tabel der hedder gaestebog med ét felt i der hedder besked.. hva skal jeg så gøre ?
Avatar billede barklund Nybegynder
13. april 2005 - 16:54 #30
Den siger den jo du ikke har. Og den siger det ikke for sjov. Tjek lige efter, at du connecter til samme server og database og med samme bruger i din PHP som i din PHPMyAdmin - eller hvor du nu har lavet tabellen.
Avatar billede Slettet bruger
13. april 2005 - 16:54 #31
Som det ser ud nu, har du _ikke_ oprettet en tabel med navnet gaestebog.
Avatar billede Slettet bruger
13. april 2005 - 16:55 #32
Det er sikkert en stavefejl -aco- Du skal passe på med at bruge æ, ø og å hvis du har brugt det.
Avatar billede gimpo Nybegynder
13. april 2005 - 17:30 #33
Fjern ";" i dene linje:
while($row = mysql_fetch_assoc($query));
Avatar billede Slettet bruger
13. april 2005 - 18:23 #34
Det er rigtigt at det er en fejl, men det er ikke det problem han er stødt ind i nu.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester