/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
MySQL select error (newbie)
Fra : Thomas Jensen


Dato : 31-03-02 22:40

Hej,

Jeg har et problem med flg:
$query = mysql_query("SELECT * FROM vinklub WHERE navn = $navnevalg ORDER BY
$retning") or die (mysql_error());

jeg får flg error:
You have an error in your SQL syntax near '' at line 1

jeg har 5 personer i mySQL og vil gerne have muligheden for at trække data
ud for hver person, men det kniber
MEGET.

Nogen der vil hjælpe??

Thomas

P.S. Har post lidt info herunder.



<?
if($navnevalg == "") {
$navnevalg = "Hanne";
}
?>
<form action="<? echo $php_self ?>">
<table width="650" border="1">
<tr bgcolor="#0099cc">
<td>Sorter efter:
<select name="navnevalg" style="background-color: #0099cc">
<option value="Hanne" >Hanne</option>
<option value="Henrik">Henrik</option>
<option value="Katrine">Katrine</option>
<option value="Lisbeth">Lisbeth</option>
<option value="Thomas">Thomas</option>
</select>
</td>
<td>
<input type="radio" name="retning" value="ASC">
Stigende <br>
<input type="radio" name="retning" value="DESC">
Faldende </td>
<td>
<input type="submit" name="Sorter" value="Sorter">
</td>
</tr>
</table>
</form>

<?

mysql_connect("localhost","root","pw");
mysql_select_db("db");
$query = mysql_query("SELECT * FROM vinklub WHERE navn = $navnevalg ORDER BY
$retning") or die (mysql_error());

while($r = mysql_fetch_array($query)) {
$navn = $r["navn"];
$vinnavn = $r["vinnavn"];
$land = $r["land"];
$aargang = $r["aargang"];
$farve = $r["farve"];
$aroma = $r["aroma"];
$smag = $r["smag"];
$helhed = $r["helhed"];
$ialt = $r["ialt"];
$butik = $r["butik"];
$pris = $r["pris"];
$dato = $r["dato"];
$kommentar = $r["kommentar"];



 
 
Mads Lie Jensen (01-04-2002)
Kommentar
Fra : Mads Lie Jensen


Dato : 01-04-02 08:13

On Sun, 31 Mar 2002 23:39:40 +0200, "Thomas Jensen"
<kingsarl@hotmail.com> wrote:

>Jeg har et problem med flg:
>$query = mysql_query("SELECT * FROM vinklub WHERE navn = $navnevalg ORDER BY
>$retning") or die (mysql_error());
>
>jeg får flg error:
>You have an error in your SQL syntax near '' at line 1

Det lyder som om $navnevalg er tom.
Smid '' om $navnevalg :

SELECT * FROM vinklup WHERE navn = '$navnevalg' ORDER BY $retning

Hov, jeg ser at $retning er enten ASC eller DESC. Der skal også være et
felt at sortere på, som i f.eks ORDER BY feltnavn ASC

--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
http://www.gartneriet.dk

Directory Opus - nu også til windows - http://www.gpsoft.com.au

Thomas Jensen (01-04-2002)
Kommentar
Fra : Thomas Jensen


Dato : 01-04-02 09:09

Hej,

Jeg har nu lidt problemer med ASC:

jeg vælger retning med:
<td>
<input type="radio" name="retning" value="ASC">
Stigende <br>
<input type="radio" name="retning" value="DESC">
Faldende </td>
<td>
<input type="submit" name="Sorter" value="Sorter">
</td>
$query = mysql_query("SELECT * FROM vinklub WHERE navn = '$navnevalg' ORDER
BY '$order' '$retning'") or die (mysql_error());

men ASC virker ikke. Den sorterer kun efter DESC

Lidt hjælp igen please :)

Thomas



Mads Lie Jensen (01-04-2002)
Kommentar
Fra : Mads Lie Jensen


Dato : 01-04-02 09:16

On Mon, 1 Apr 2002 10:09:05 +0200, "Thomas Jensen"
<kingsarl@hotmail.com> wrote:

>jeg vælger retning med:
><td>
> <input type="radio" name="retning" value="ASC">
> Stigende <br>
> <input type="radio" name="retning" value="DESC">
> Faldende </td>
> <td>
> <input type="submit" name="Sorter" value="Sorter">
></td>
>$query = mysql_query("SELECT * FROM vinklub WHERE navn = '$navnevalg' ORDER
>BY '$order' '$retning'") or die (mysql_error());
>
>men ASC virker ikke. Den sorterer kun efter DESC

Ingen pinger ('') om feltnavne/SQL-keywords:

ORDER BY feltnavn ASC
ORDER BY feltnavn DESC


--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
http://www.gartneriet.dk

Directory Opus - nu også til windows - http://www.gpsoft.com.au

Thomas Jensen (01-04-2002)
Kommentar
Fra : Thomas Jensen


Dato : 01-04-02 09:31

Hej Mads.

Tak for dit hurtige svar :)

lige et spg til:
$query = mysql_query("SELECT * FROM vinklub WHERE navn = '$navnevalg' ORDER
BY '$order' $retning") or die (mysql_error());

$navnevalg er også valgt med en dropdownbox.
Kan jeg lave et eller andet så den vælger alle navnene??
Jeg har prøvet med * men det gik ikke

Thomas



Mads Lie Jensen (01-04-2002)
Kommentar
Fra : Mads Lie Jensen


Dato : 01-04-02 10:17

On Mon, 1 Apr 2002 10:31:10 +0200, "Thomas Jensen"
<kingsarl@hotmail.com> wrote:

>Hej Mads.
>
>Tak for dit hurtige svar :)

Velbekom

>lige et spg til:
>$query = mysql_query("SELECT * FROM vinklub WHERE navn = '$navnevalg' ORDER
>BY '$order' $retning") or die (mysql_error());
>
>$navnevalg er også valgt med en dropdownbox.
>Kan jeg lave et eller andet så den vælger alle navnene??
>Jeg har prøvet med * men det gik ikke

Så skal du fjerne hele WHERE-delen:

SELECT * FROM vinklub;


--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
http://www.gartneriet.dk

Directory Opus - nu også til windows - http://www.gpsoft.com.au

Thomas Jensen (01-04-2002)
Kommentar
Fra : Thomas Jensen


Dato : 01-04-02 10:32

> Mads Lie Jensen
> Så skal du fjerne hele WHERE-delen:
>
> SELECT * FROM vinklub;

Dvs der findes ikke den mulighed at man kunne kave noget med: (se navnevalg)

$query = mysql_query("SELECT * FROM vinklub WHERE navn = '$navnevalg
(henrik, thomas)' ORDER BY '$order' $retning") or die (mysql_error());

Thomas



Mads Lie Jensen (01-04-2002)
Kommentar
Fra : Mads Lie Jensen


Dato : 01-04-02 11:12

On Mon, 1 Apr 2002 11:31:32 +0200, "Thomas Jensen"
<kingsarl@hotmail.com> wrote:

>> Så skal du fjerne hele WHERE-delen:
>>
>> SELECT * FROM vinklub;
>
>Dvs der findes ikke den mulighed at man kunne kave noget med: (se navnevalg)
>
>$query = mysql_query("SELECT * FROM vinklub WHERE navn = '$navnevalg
>(henrik, thomas)' ORDER BY '$order' $retning") or die (mysql_error());

Man kunne godt gøre det med

WHERE navn IN ('henrik', 'thomas') men det vil være latterligt.

Siden du kører gennem php så er det meget smartere at lave din query så
where-delen helt udelades hvis alle navne skal med. Det burde ikke være
nogen stor opgave...

--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
http://www.gartneriet.dk

Directory Opus - nu også til windows - http://www.gpsoft.com.au

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408927
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste