Avatar billede ssb Nybegynder
27. april 2000 - 16:54 Der er 30 kommentarer

HJÆLP DET HASTER!! 300 POINT!!

JEG HAR ET PROBLEM NÅR JEG PRØVER AT KALDE DEN FØLGENDE KODE KOMMER BROWSEREN FREM MED EN ERROR DEBUG: Test Signal nå jeg så trykker på ok kommer de et vindue frem hvor der står at mysqld har udført en ulovlig handling og at den vil blive lukket (trykker på luk)

MEN HVORFOR ??? Når jeg prøver at køre det samme script uden at have order by id DESC med er der ingen problemer

PLESE HJÆLP DU TJENER 300 POINT PÅ DET!!

<?
mysql_connect("localhost","root");
mysql_select_db("tagwall");
?>
<body bgcolor="gray">
<h3 align="center">TAGWALL</h3><br>
<br>
<form action="<? echo $php_self ?>">
NICK:<br>
<input type="text" name="nick"><br>
<br>
MESSAGE:<br>
<input type="text" size="100" name="message"><br>
<br>
COLOR:<br>
<select name="color">
<option selected value="000000">Sort </option>
                  <option value="0000FF">Blå </option>
                  <option value="FF0000">Rød </option>
                  <option value="00FF00">Grøn </option>
                  <option value="FF00FF">Lilla </option>
                  <option value="008800">Mørk grøn </option>
                  <option value="000088">Mørk blå </option>
                  <option value="880000">Mørk rød </option>
                  <option value="008888">Mørk turkis </option>
                  <option value="880088">Mørk lilla </option>
                  <option value="8A2BE2">Blåviolet </option>
                  <option value="D2691E">Chokolade </option>
                  <option value="FFFF00">Gul </option>
                  <option value="FFD700">Guld </option>
                  <option value="FF8C00">Mørk orange </option>
                  <option value="808000">Oliven </option>
                  <option value="FFA500">Orange </option>
                  <option value="00BFFF">Skyblå </option>
                  <option value="00FF7F">Sommergrøn </option>
                  <option value="EE82EE">Violet</option>
</select><br>
<br>
<br>
<input type="submit" name="add_tag" value=" - Send mit tag - ">
</form>
<?
if($add_tag)
{
$query = mysql_query("INSERT INTO wall (nick,message,color)" . "VALUES ('$nick','$message','$color')");
}
?>

<?php
$query = mysql_query("SELECT * from wall order by id DESC");

  while($row = mysql_fetch_array($query)) {
  echo "<font color=\"#000000\">".$row["nick"].":</font> <font color=\"".$row["color"]."\">".$row["message"]."</font>\n<br><br>";
  }
      mysql_free_result($result);

?>
Avatar billede steffen Nybegynder
27. april 2000 - 17:04 #1
Drop DESC i "by id DESC" så skulle det spille

Den er vel kun interesant hvis der skal sorteres efter flere ting alligevel?

[fx SELECT ... FROM tbl_name ORDER BY key_part1 DESC, key_part2 DESC LIMIT 10]
Avatar billede steffen Nybegynder
27. april 2000 - 17:06 #2
avs, sorry - der var jeg da helt forkert på den :-) [havde lige glemt der var tale om simpel baglæns sortering]
Avatar billede steffen Nybegynder
27. april 2000 - 17:13 #3
Tja, så har jeg ikke andre forslag end at der måske er tale om en fejl i koden -

http://www.mysql.com/php/manual.php3?section=News-3.23.8

- taler om at:

"Fixed problem with ISAM when doing some ORDER BY ... DESC queries."

Så hvis du kører en tidligere version er det måske nu du skal opgradere.
Avatar billede steffen Nybegynder
27. april 2000 - 17:16 #4
Ehh, altså mysql database-koden, ik! :-) (din ser såmænd fin ud)

Din INSERT INTO [ .. color)" . "VALUES .. ] ser ud til at mangle et mellemrum før values - men ellers! :-)
Avatar billede ssb Nybegynder
27. april 2000 - 18:31 #5
Hejsa Steffen

Øhh altså det virker ikke selvom jeg fjerner DESC commandoen

Jeg har mysql verion nr. 3.22.24 så jeg vil gerne vide hvor jeg kan hente opdateringen til version 3.23.8

MVH

Simon

p.s ja du har ret formålet er nemlig bare at sortere bag fra.

p.p.s kan du måske også lige fortælle mig hvordan jeg med en php komando efter
$query = mysql_query("INSERT INTO wall (nick,message,color)" . "VALUES ('$nick','$message','$color')");

kan gøre sådan at du (når det er blevet ge,t id db'en) bliver sendt videre til den næste side (det virker jo ikke med header("Location: url"))
Avatar billede steffen Nybegynder
27. april 2000 - 18:43 #6
Du kan hente opdateringen fra www.mysql.com. Det er garanteret bare det der skal til.

Angående det nederste du spørger om kan du i det link brugeren klikker på, give id'et med - fx

farvebog.php3?id=5

så kan du bruge variablen $id i farvebog.php3
Avatar billede ssb Nybegynder
27. april 2000 - 20:08 #7
Hej Steffen

Er det muligt du kan give mig en helt eksakt url til den opdatering

kan nemlig ikke finde den på mysql.com!!

MVH

Simon
Avatar billede steffen Nybegynder
27. april 2000 - 20:27 #8
Jow da!

http://www.mysql.com/download_win.html

de to øverste links skulle være hvad du skal bruge. Aner ikke om de bygger 3.23 på ms-dos endnu - men der er da en version der ser ud til at være nyere end din ..
Avatar billede ssb Nybegynder
27. april 2000 - 20:47 #9
Er det muligt at du vil lave ompå mit script så det virker

så opretter jeg et spørgsmål mere (så du kan få flere point!!)

MVH

Simon
Avatar billede steffen Nybegynder
27. april 2000 - 20:59 #10
Det kan vi godt finde ud af - det er nok nemmest hvis jeg kan teste det af direkte på dit hotel - så send mig lige en e-mail med info, så vil jeg prøve det af imorgen middag eller sårn - sengetid nu :-)
Avatar billede ssb Nybegynder
27. april 2000 - 21:34 #11
Hmm kan du ikke give mig koden istedet!! Sakl bruge det senest lørdag efter middag (600 point)!!
Avatar billede steffen Nybegynder
28. april 2000 - 11:03 #12
Jeg har prøvet dit script af på:

http://www.datamatikeruddannelsen.dk/spouls1/phptryouts/tagwall.php3

Og det virker fint (mod en linux-mysql).

(Jeg har ikke lavet andre ændringer end at sætte databasen op til de indstillinger jeg har - databasen er lavet på følgende måde:)

CREATE TABLE wall (
  id tinyint(4) DEFAULT '0' NOT NULL auto_increment,
  nick varchar(255),
  color varchar(255),
  message varchar(255),
  PRIMARY KEY (id)
);

Så alt tyder på, at du bare skal have skiftet din version ud - enten med en nyere, eller alternativt en ældre ..

Ang. ID feltet kan du lave et "hidden" felt, ala:

<input type="hidden" name="id" value="$id">

[$id id skal lige indsættes i en <? ?> indramning, naturligvis]

- Så trækker du ID'et med fra side til side.
Avatar billede steffen Nybegynder
28. april 2000 - 11:09 #13
Iøvrigt: hvis du måske ikke har oprettet din database med autoinc og primary key etc på ID-feltet - kunne det da godt tænkes at det ville hjælpe at tilføje det.
Avatar billede ssb Nybegynder
28. april 2000 - 13:07 #14
Hej,

hvad betyder det der tinyint(4) ??

MVH

Simon
Avatar billede steffen Nybegynder
28. april 2000 - 13:19 #15
oh, det er bare en valgmulighed for heltal. Det går vist kun til 16 millioner eller sårn noget - brug bare int i stedet hvis du synes ..
Avatar billede steffen Nybegynder
28. april 2000 - 14:34 #16
Håber du snart får det til at virke :-)
Avatar billede ssb Nybegynder
28. april 2000 - 15:32 #17
øhh jamen jeg skal jo ikke bruge tal på noget tidspunkt (jo i farven men det skriver jeg med vvarchar (hex koder ingår der både bogstaver og tal i jo))
Avatar billede steffen Nybegynder
28. april 2000 - 22:06 #18
Nej, tal'et var kun for ID'et - det er autogenereret som jeg har lavet det - jeg kan se du sorterer efter det, så det forekommer mest naturligt :-) - men det behøver du ganske rigtigt ikke gå op i.
Avatar billede ssb Nybegynder
29. april 2000 - 09:16 #19
HEY STEFFEN PLEASE HELP!!!!!!

er det muligt at lave en top 25 hved at tælle hvor mange bogstaver der er indtastet i message feltet og så sortere efter den der har flest bogstaver PLEASE HJÆLP DET HASTER!!!!!!!!

MVH

Simon
Avatar billede ssb Nybegynder
29. april 2000 - 09:22 #20
hov jeg vil også lige høre hvorn kan man kan udtrække informationen af databasen så den automatick laver en email om til et link og det samme gælder et link!!

MVh

Simon
Avatar billede steffen Nybegynder
30. april 2000 - 11:48 #21
Lad os  lige afslutte det her spørgsmål - jeg får ikke emails i øjeblikket fra eksperten (gør det lidt bøvlet at holde øje med hvornår du skriver), så afslut her, og skriv til mig via email i stedet på:

steffenpoulsen@usa.net
Avatar billede steffen Nybegynder
18. maj 2000 - 18:20 #22
Dette er bare et svar, så du kan lukke spørgsmålet
Avatar billede mollevp Nybegynder
08. september 2000 - 00:00 #23
http://www.mysql.com/downloads/mysql-3.23.html
Her kan du downloade den nye version MySql
Avatar billede jd Nybegynder
11. november 2000 - 21:38 #24
en afslutning?
Avatar billede scoredyr Nybegynder
26. november 2000 - 00:43 #25
Tjeeeeh det er jo snart jul :-)
Avatar billede styler Nybegynder
14. februar 2001 - 16:48 #27
+ så har jeg sådan et system liggende.. Hvis du er interreseret.. anders_2001@ofir.dk
Avatar billede stringbuffer Nybegynder
01. juni 2001 - 15:55 #28
Såvidt jeg kan se så er det fordi du ikke har en ressource identifier, der hedder $result, og du beder mysql om at frigøre den med mysql_free_result($result)

istedet skal du sige mysql_free_result($query)

men da dit script slutter med denne linie kan du lissågodt undlade den, da ressources til mysql queries bliver automatisk frigivet når scriptet er kørt til ende.
Avatar billede stringbuffer Nybegynder
01. juni 2001 - 16:30 #29
forresten så bør du tjekke om det ikke er din SQL-sætning, der er noget galt med..

prøv med flg.

$query = mysql_query(din sql-sætning her..) or die(\"Ugyldig forespørgsel\");
Avatar billede stringbuffer Nybegynder
01. juni 2001 - 17:31 #30
Du burde måske lave en mysql_free_result efter din insert, men ikke efter din select. På den måde frigøres hukommelsen, der blev brugt i forbindelse med INSERT og kan bruges af systemet (f.eks. til din SELECT) mens scriptet kører.
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
Computerworld tilbyder specialiserede kurser i database-management

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