php-variable in SQL-code

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Martijn Aikema

Martijn Aikema

27/01/2008 19:56:00
Quote Anchor link
Is het mogelijk om een php-variabele in te voegen in een php code? Ik heb een algemene code voor weergave van nieuws op mijn website. Ik wil het liefst deze via een include in een categorie-specifieke-pagina invoegen.

Om de categorie te specifieren heb in het begin van de categoriepagina een variabele aangemaakt:

$categorie = '<hier komt dan de naam>'

In mijn MySQL database heb ik de categorien gespecificeerd. Binnen de tabel heeft deze variabele 'category'.

Nu wil ik de volgende code uitvoeren:

$sql = 'SELECT * FROM `DMA_News` WHERE category = "<naam van de categorie>" ORDER BY `id` DESC LIMIT 0,4';


Voor het gedeelte waar de categorie staat wil ik dan de variabele $categorie gebruiken. Maar deze kan ik niet binnen het sql-statement worden gebruikt.

Is hier een andere oplossing voor? Of moet ik de volledige code steeds op elke pagina invoegen zonder variabele?
 
PHP hulp

PHP hulp

08/01/2025 08:43:57
 
Michael

michael

27/01/2008 20:03:00
Quote Anchor link
queries altijd met dubbele " tekens

$query= " SELECT * FROM DMA_news WHERE category =".$naamCat." ORDER BY id DESC

je hoeft geen ' te gebruiken tussen tabel namen en veld namen.
 
Joren de Wit

Joren de Wit

27/01/2008 20:17:00
Quote Anchor link
$naamCat zal lijkt me wel een string zijn, dus moet deze altijd nog tussen enkele quotes geplaatst worden:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$sQuery
= "
    SELECT *
    FROM DMA_news
    WHERE category = '"
.$naamCat."'
    ORDER BY id DESC
    LIMIT 0, 4
"
;
?>

Verder horen backticks inderdaad niet in een query thuis. Dat is bende van MySQL en verwijder je zo snel mogelijk!
 
Michael

michael

27/01/2008 23:57:00
Quote Anchor link
@Blanch, je hebt helemaal gelijk. Maar bij een goed datamodel hoort het meestal een id te zijn :)
 
Frank -

Frank -

28/01/2008 00:37:00
Quote Anchor link
Offtopic: Sorteren op id is redelijk kansloos, een id is niks en zegt niks. Een id wijst een uniek record aan, wat er in dit record staat, dat kun je in de andere kolommen zijn. Sorteren op 1 van de andere kolommen is dan ook minstens 100x zinvoller.

Wanneer je sorteert op id, weet je in 9 van de 10 gevallen dat je verkeerd bezig bent en stiekum een waarde toekent aan een waardeloos gegeven, het id. Pas je sortering even aan, daar ga je nog veel plezier van hebben.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.