php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.03.2009, 20:06  
Neuer Benutzer
 
Registriert seit: 14.03.2009
Beiträge: 16
Maxx88 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Bilder und Datenbank

Hallo an Alle,

bevor ich hier lauter gut gemeinte Ratschläge bekomme 2 sachen:

A: ICh weiß das man Bilder nicht in Datenbanken speichern sollte
B: Ich weiß das es die DB langsam macht

Nichts desto trotz will ich das mal probieren.

Allerdings hab ich ein Problem.

Soweit bin ich bereits:
PHP-Code:
<?php
session_start
();
$member=$_SESSION['member'];
$picture=$_FILES['bild'];

if(
$picture['size']>"2097152"){
    
header("Location: profile_change.php?fehler=tobig");
    die;
}
$datei=file_get_contents($picture['tmp_name']);
mysql_connect("XXX","XXX","XXX");
mysql_select_db("XXX");

$query_check="SELECT Bild from member where email = '$member'";

$stid_check=mysql_query($query_check);
$res_check=mysql_fetch_assoc($stid_check);
$check=$res_check['Bild'];
if(!empty(
$check)){
    
$query_upload="UPDATE member SET Bild = '$datei' where email='$member'";
    
mysql_query($query_upload);
    echo 
mysql_error();
}
else{
    
$query_insert="INSERT INTO member (Bild) VALUES ('$datei') where email='$member'";
    
mysql_query($query_insert);
    echo 
mysql_error();
    
//var_dump($datei);
}
?>
laut SQL Error hab ich einen fehler im Syntax:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Japanese Print Flags' at line 1

Das ganze soll in ein BLOB feld eingetragen werden.

Bei dem im PHPMyAdmin gerade herausgefunden "nicht editierbar" steh. Ist das normal?
Ich hab jetzt alles versucht und komm net weiter.

Danke für eure hilfe schonmal im Vorraus.

Geändert von Maxx88 (14.03.2009 um 21:13 Uhr).
Maxx88 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 14.03.2009, 21:26  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Du musst den Inhalt von $datei noch einmal durch mysql_real_escape_string jagen. Oder besser prepared statements verwenden.
David ist offline   Mit Zitat antworten
Alt 14.03.2009, 21:39  
Neuer Benutzer
 
Registriert seit: 14.03.2009
Beiträge: 16
Maxx88 befindet sich auf einem aufstrebenden Ast
Standard Danke

Hey Danke scheint ein wenig was gebracht zu haben den jetzt bekomm ich den fehler:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where email='XXX'' at line 1

Da fehlt irgendwo was seh ich aber im quelltext ist alles da meiner Meinung.

die Zeile $datei=mysql_real_escape_string($datei); hab ch direkt unter der DB verbindung eingefügt.
Maxx88 ist offline   Mit Zitat antworten
Alt 14.03.2009, 21:51  
phpdev
Gast
 
Beiträge: n/a
Standard

Bei einem Insert kannst du keine Where-Bedingung angeben.

Was bezweckst du mit deiner Überprüfung? Ist doch völlig egal, ob bereits ein Bild existiert - in beiden Fällen kannst du UPDATE benutzen.
  Mit Zitat antworten
Alt 14.03.2009, 21:55  
Neuer Benutzer
 
Registriert seit: 14.03.2009
Beiträge: 16
Maxx88 befindet sich auf einem aufstrebenden Ast
Standard Boah

Stimmt...vollkommende geistige verwirrung.

Danke hat einwandfrei funktioniert.

Blöde frage vllt aber wie codier ich das nachm auslesen wieder um?

Geändert von Maxx88 (14.03.2009 um 22:06 Uhr).
Maxx88 ist offline   Mit Zitat antworten
Alt 15.03.2009, 08:16  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Garnicht. Wenn Du MySQL das Zeichenkettenliteral 'abc\'xyz' sendest, speichert es abc'xyz. Und genau dieses \ setzt mysql_real_escape_string() ein (und noch vor ein paar anderen Zeichen).
Das ist genauso wie bei PHP
PHP-Code:
echo 'abc\'xyz'
Ausgabe:
Zitat:
abc'xyz
Das \ dient an dieser Stelle nur als Markierung für den Parser.
David ist offline   Mit Zitat antworten
Alt 15.03.2009, 11:10  
Neuer Benutzer
 
Registriert seit: 14.03.2009
Beiträge: 16
Maxx88 befindet sich auf einem aufstrebenden Ast
Standard Ja

Bist du sicher?

Denn vor mysql_real_escape_string konnt ich das bild wunderbar wiedergeben jetzt nachm auslesen nicht mehr.
Maxx88 ist offline   Mit Zitat antworten
Alt 15.03.2009, 11:20  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Ich bin mir sicher.
David ist offline   Mit Zitat antworten
Alt 15.03.2009, 12:01  
Neuer Benutzer
 
Registriert seit: 14.03.2009
Beiträge: 16
Maxx88 befindet sich auf einem aufstrebenden Ast
Standard Hm

Muss ich das noch irgendwo durchjagen bevor ich binärdaten in php wiedergeben kann?
Maxx88 ist offline   Mit Zitat antworten
Alt 15.03.2009, 12:06  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Nein, und wenn Du das nächste Mal nachfragst immer noch nicht
David ist offline   Mit Zitat antworten
Antwort


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
Bilder ohne DB sicher speichern Diet PHP Tipps 2005 6 25.03.2009 00:07
Bilder aus Datenbank / <img>-Tags automatisch generieren Teela PHP Tipps 2009 2 14.03.2009 17:40
Bilder in eine SQLite Datenbank speichern tecci73 Datenbanken 5 26.02.2009 10:56
[Erledigt] Bilder aus einer Datenbank anzeigen lassen SteSte Datenbanken 2 16.02.2009 23:34
problem bei adminbereich für bilder in datenbank stellen mobilica PHP Tipps 2009 18 04.01.2009 10:58
Bilder auslesen aus der Datenbank !HILFE! ikkunaprincessa Datenbanken 20 28.11.2008 18:09
Bilder in Text platzieren, der aus einer Datenbank kommt Erecthoma2006 PHP Tipps 2006 7 18.09.2006 09:39
Bilder aus Datenbank - Array auswählen und anzeigen horstenpeter PHP Tipps 2006 6 22.01.2006 21:11
Bilder in der Datenbank als Ausgabe in HTML? PHP Tipps 2005 8 19.05.2005 14:07
Bilder in Tabellen nixdorf HTML, Usability und Barrierefreiheit 36 09.05.2005 21:15
Bilder in Datenbank speichern Beatbox Datenbanken 2 29.03.2005 15:32
Bilder aus der Datenbank Skazi Datenbanken 2 09.02.2005 13:42
Bilder hochladen mit/ohne Datenbank 'progman' PHP Tipps 2004 9 19.10.2004 21:03
Bilder in Datenbank speichern PHP Tipps 2004 11 05.08.2004 10:58

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
bilder aus datenbank langsam, bilder aus db langsam, you have an error in your sql syntax; check the manual that corresponds to your mysql server version for the right syntax to use near \'japanese print flags\' at line 1

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:30 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