Hi Leute
hab da nen kleines Problem... ich hab mir ne suche erstellt, in der man nach artikeln suchen kann...
ich hab aber auch artikel in der DB die deaktiviert sind.
um die bei der suchabfrage nicht miteinzubeziehen hab ich einfach
das active=1 in die where-klausel geschrieben :
WHERE active='1' AND name LIKE '%$suchbegriff%'
jedoch wird das ignoriert und es werden auch artikelt mit active=2 angezeigt...
kann man da nicht kombinieren ? und wenn nicht, wie muss ich das umgehen ?
Ankündigung
Einklappen
Keine Ankündigung bisher.
in where-klausel like und AND kombinieren, geht das nicht ?
Einklappen
Neue Werbung 2019
Einklappen
X
-
Ein Gast erstellte das Thema in where-klausel like und AND kombinieren, geht das nicht ?.in where-klausel like und AND kombinieren, geht das nicht ?
Stichworte: -
-
Zitat von ways2webdie Lösung war eine andere !
das active=1 muss 2 mal eingesetzt werden ! wegen dem OR
also jeweils nach : LIKE '%$suchbegriff%'
dan funtz es !
-
Zitat von ways2webdie Lösung war eine andere !
das active=1 muss 2 mal eingesetzt werden ! wegen dem OR
also jeweils nach : LIKE '%$suchbegriff%'
dan funtz es !
Einen Kommentar schreiben:
-
Ein Gast antwortetedie Lösung war eine andere !
das active=1 muss 2 mal eingesetzt werden ! wegen dem OR
also jeweils nach : LIKE '%$suchbegriff%'
dan funtz es !
Einen Kommentar schreiben:
-
Ein Gast antworteteKlammern würden helfen.
Der Ausrdruck wird von links nach rechts ausgewertet. Deswegen würde dieser PartPHP-Code:info LIKE '%$suchbegriff%' AND active=1
PHP-Code:name LIKE '%$suchbegriff%'
Also:
PHP-Code:<?php
"SELECT * FROM $language WHERE (name LIKE '%$suchbegriff%' OR info LIKE '%$suchbegriff%') AND active=1 LIMIT $start,$resultsperPage"
?>
Einen Kommentar schreiben:
-
Wende bitte mal folgende Funktion an, statt dem gewöhnlichen mysql_query().
Das könnte klarheit verschaffen.
PHP-Code:<?php
function debug_query($query) {
$result = mysql_query($query);
$error = $result == false ? mysql_error() : '';
echo '
<pre>' . htmlspecialchars($query) . '</pre></p>
' . $error . '</p>';
return $result;
}
?>
Einen Kommentar schreiben:
-
Ein Gast antworteteich find den fehler nicht
hier meine kompletetr query :
PHP-Code:<?php
$sql_products=mysql_query("SELECT * FROM $language WHERE name LIKE '%$suchbegriff%' OR info LIKE '%$suchbegriff%' AND active=1 LIMIT $start,$resultsperPage")
?>
CREATE TABLE `en` (
`id` int(11) NOT NULL default '0',
`text_id` int(11) NOT NULL default '0',
`name` text NOT NULL,
`info` text NOT NULL,
`active` tinyint(4) NOT NULL default '1',
PRIMARY KEY (`id`),
FULLTEXT KEY `name` (`name`),
FULLTEXT KEY `info` (`info`)
) TYPE=MyISAM;
#
# Daten für Tabelle `en`
#
INSERT INTO `en` VALUES (0, 1001, 'starter kit 1 en', 'starter kit 1 en description', 1);
INSERT INTO `en` VALUES (1, 1002, 'starter kit 2 en', 'starter kit 2 en description', 2);
INSERT INTO `en` VALUES (2, 1003, 'starter kit 3 en', 'starter kit 3 en description', 1);
INSERT INTO `en` VALUES (3, 1004, 'starter kit 4', 'starter kit 4 en description', 1);
Einen Kommentar schreiben:
-
Doch das geht, der Syntax deines Querys hier im Board ist soweit korrekt, der Fehler muss wo anders in dem Script liegen. Poste es hier oder such den Fehler selber, in dem du Schritt für Schritt die Variablen auf ihren Inhalt hin überprüfst.
Einen Kommentar schreiben:
Einen Kommentar schreiben: