php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.02.2005, 08:41  
Erfahrener Benutzer
 
Benutzerbild von Alpha Centauri
 
Registriert seit: 05.02.2005
Beiträge: 278
Alpha Centauri
Standard Probleme mit Zeichen wie + ' " usw. in der MySQL-DB

Hallo Leute,

Ich hab folgendes Problem

ich möchte meine DB nach diversen Begriffen durchsuchen
z.B.

$text = ' .. und hier finden Sie auch den edito Notepad++, der ...';

der Begriff soll dann gesucht werden und durch einen Link aus der DB
ersetzt werden.

so sieht das ganze z.z. aus:

'SELECT*FROM o_downloads WHERE begriff LIKE notepad++'

dann kommt folgende Meldung:

SQL: You have an error in your SQL syntax near '+' at line 1

hmm. schön aber wie dann, wenn nicht mit +.
ich brauche alle Zeichen.

das selbe Problem hatte ich schon mit ' - Zeichen und " - Zeichen

1. Welche darf ich überhaupt verwenden?
2. Und wenn ich Diese dennoch nemen will, was muss ich anders machen?
Alpha Centauri ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.02.2005, 08:59  
Erfahrener Benutzer
 
Registriert seit: 01.12.2003
Beiträge: 4.113
supertramp
Standard

was soll den das + bewirken?

meinst du ggf. den Platzhalter %?
__________________
Aufstrebend, kompetent und werbefrei.
www.developers-guide.net
supertramp ist offline  
Alt 18.02.2005, 09:11  
Erfahrener Benutzer
 
Benutzerbild von Alpha Centauri
 
Registriert seit: 05.02.2005
Beiträge: 278
Alpha Centauri
Standard

das + soll nix bewirken, es gehört zum Wort
allerdings sieht das die Datenbank anders.
Alpha Centauri ist offline  
Alt 18.02.2005, 09:17  
Gast
 
Beiträge: n/a
Standard

Versuch mal so:

'SELECT * FROM o_downloads WHERE begriff LIKE notepad\+\+'

mit dem Backslash '\' kannst du sonderzeichen maskieren
Beispiele:

\n Neue Zeile im Quelltext
\r Neuer Absatz im Quelltext
\t Tabulator, einrücken im Quelltext
\” maskiert "
\$ maskiert $
\\ maskiert \

sollte auch mit + funktionieren, aber habs noch nie ausprobiert ...
 
Alt 18.02.2005, 09:24  
Erfahrener Benutzer
 
Registriert seit: 08.02.2005
Beiträge: 224
lomtas
lomtas eine Nachricht über ICQ schicken
Standard

und ich glaube solange du etwas nicht in "" packst, ist es kein string, oder?
lomtas ist offline  
Alt 18.02.2005, 09:24  
Erfahrener Benutzer
 
Benutzerbild von Alpha Centauri
 
Registriert seit: 05.02.2005
Beiträge: 278
Alpha Centauri
Standard

ich habs jetzts so:

SELECT * FROM o_downloads WHERE begriff LIKE ('notepad++')

aber funzt auch nur bei dem +

ich sollte dazu noch sagen, dass die Wörter automatisch ausgelesen werden
und es auch in der Datenbak umstänlich ist immer solche Sonderzeichen zu verwenden.
ich benutze phpmyadmin und dort kann ich ja auch manuell Einträge mit solchen Zeichen machen.

*grübel
__________________
Alpha Centauri ist offline  
Alt 18.02.2005, 09:28  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von lomtas
und ich glaube solange du etwas nicht in "" packst, ist es kein string, oder?
richtig, aber da du dort kein String einbauen kannst musst du es in PHP maskieren, oder halt den wert in einer var vordeklarieren ...
so würde:

SELECT * FROM o_downloads WHERE begriff LIKE $suchtext

und $suchtext kann man ja vorbearbeiten, und von PHP in entsprechende zeichen formatieren lassen
 
Alt 18.02.2005, 15:53  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Bonin
Zitat:
Zitat von lomtas
und ich glaube solange du etwas nicht in "" packst, ist es kein string, oder?
richtig, aber da du dort kein String einbauen kannst
Quatsch!

http://dev.mysql.com/doc/mysql/de/st...functions.html

PHP-Code:
<?php
if (! ini_get('magic_quotes_gpc'))
  
$suchtext mysql_escape_string($suchtext);
$sql "SELECT * FROM o_downloads WHERE begriff LIKE '%$suchtext%'";
?>
Hinweis: * ist durch eine angepaßte Spaltenliste zu ersetzen.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mysql Server Einstellunen Optimieren pchero Datenbanken 3 01.05.2007 19:50
Probleme mit Variable bei MySQL Abfrage maccoder Datenbanken 3 05.08.2006 23:10
Ideen für Tageszeitung mit XML, MySQL, PHP gesucht webazubi PHP-Fortgeschrittene 7 06.07.2006 12:25
Probleme mit MySql Datenbank PHP Tipps 2006 13 09.05.2006 16:33
russische zeichen in mysql Sclot Datenbanken 9 26.11.2005 14:36
probleme mit mysql tabellen! fadass Datenbanken 6 13.07.2005 09:20
Probleme bei der Eingabe in Mysql BITTE UM SCHNELLE HILFE!!! PHP Tipps 2005-2 37 06.07.2005 23:32
mysql probleme nach update auf php5 PHP-Fortgeschrittene 2 20.02.2005 17:09
Probleme beim schreiben in Mysql mediaindesign PHP-Fortgeschrittene 9 25.01.2005 13:28
[Erledigt] probleme mit mysql Datenbanken 10 29.12.2004 16:54
Probleme seit MySQL 4.1.7 Server, Hosting und Workstations 3 21.12.2004 14:17
Probleme mit MySQL Befehl Schliesen PHP Tipps 2004-2 7 14.12.2004 12:41
MySql und Php (Probleme mit Sonderzeichen) pit62 PHP-Fortgeschrittene 4 15.06.2004 04:19
probleme bei mysql PHP Tipps 2004 3 07.06.2004 21:34
mysql ausgabe auf zeichen beschränken - hilfe!!! niffi PHP-Fortgeschrittene 16 03.06.2004 14:40

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql near problem sonderzeichen, mysql like leerzeichen maskieren, mysql \' maskieren, mit notepad zeichen maskieren?, mysql § maskieren, notepad platzhalter *, mysql maskieren sonderzeichen

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.