Antworten auf deine Fragen:
Neues Thema erstellen

[MySQL, PHP] Benutzericon bei Kommentaren

PhSn

Videofreak

Hey Leute,

bin grad beim machen und tun an meiner Website. Jetz is das aber mein erstes größeres Projekt mit PHP und MySQL.

Bei meinem Problem geht es um ein eigentlich einfaches Ding:
Mann kann bei den Kommentaren und den Tutorials meiner Website Benutzericons hinzufügen. Die müsste man halt bei abload.de oder so hochladen und dann immer beim Beitrag einfügen. Dahabe ich mri was anderes ausgedacht:

Ne neue MySQL Tabelle, bei der ich Username und den Link zu den Grafiken einfüge. Soweit so gut. Nur wenn ich jetz nen Kommentar abschicke mit dem Usernamen PhSn, und der in der Tabelle enthalten ist, so soll er den Link der Grafik aus der Tabelle nehemen.

Is das i-wie verständlich?^^

Der Aufbau der User + Icon Tabelle (name: icons) sieht so aus:
Code:
+---------+-------------+----------------------------------------------+
| id         | user         |  icon                                                 |
+---------+-------------+----------------------------------------------+
| 1          | PhSn        |         |
| 2          | Testuser   |    |
+---------+-------------+----------------------------------------------+
Mein Code bisher

PHP:
$Befehl = "SELECT * FROM icons WHERE user = '{$name}'";
    $iconURL = mysql_query($Befehl);
    
    if (!$iconURL)
    {
        $icon = $icon;
    } else {
        $iconURL_icon = mysql_fetch_assoc($iconURL);
        $icon = echo "\"" . $iconURL_icon["icon"] . "\"";
    }
Greez

PhSn
 

blackout

Schaf im Wolfspelz

AW: [MySQL, PHP] Benutzericon bei Kommentaren

EDIT: Oops, hab oben im Code eine Zuweisung überlesen. Der Post hier ist damit mehr oder weniger sinnlos.

Typischer Fehler: mysql_query liefert nicht das Ergebnis des Queries zurück, sondern einen Zeiger darauf. So in der Art müsste es funktionieren:
PHP:
<?php
$Query = 'SELECT icon FROM icons WHERE user = "'.mysql_real_escape_string($name).'" LIMIT 1;';
$Ptr = mysql_query($Query);
$User = mysql_fetch_assoc($Ptr);
if(isset($User['icon']) && $User['icon'] !== '') {
	$Icon = $User['icon'];
} else {
	$Icon = 'default.ext';
}
echo '<img src="'.htmlspecialchars($Icon).'" alt=""/>';
 
Zuletzt bearbeitet:

Christian

verpeilt & verschallert

AW: [MySQL, PHP] Benutzericon bei Kommentaren

Typischer Fehler: mysql_query liefert nicht das Ergebnis des Queries zurück, sondern einen Zeiger darauf. So in der Art müsste es funktionieren:
PHP:
<?php
$Query = 'SELECT icon FROM icons WHERE user = "'.mysql_real_escape_string($name).'" LIMIT 1;';
$Ptr = mysql_query($Query);
$User = mysql_fetch_assoc($Ptr);
if(isset($User['icon']) && $User['icon'] !== '') {
	$Icon = $User['icon'];
} else {
	$Icon = 'default.ext';
}
echo '<img src="'.htmlspecialchars($Icon).'" alt=""/>';
Generell richtig;
Hier aber nicht das Problem, denn nach dem mysql_query, welches den Zeiger zurückgibt wendet er mysql_fetch_assoc richtig auf diesen Zeiger an.

zu Phsn:
Das Problem wird das Zuweisen der IconURL mit dem Sprachkonstrukt echo sein.
Das ist falsch, denn wie der Name schon sagt, ist echo ein Sprachkonstrukt, welches zur sofortigen Ausgabe an den Browser führt, d.h. Die URL wird sicherlich irgendwo ausgegeben, nur halt nicht an der richtigen Stelle.
Lasse das echo in der Variablenzuweisung weg, dann solltest Du auf das selbe Ergebnis kommen (Von SQL-Injections jetzt mal abgesehen).

Generell würde ich Dir aber raten den Codeschnipsel von Blackout zu nehmen, denn dieser berücksichtigt auch andere Ausnahme- und Hackingfälle.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.614
Beiträge
1.538.351
Mitglieder
67.525
Neuestes Mitglied
mgtaucher
Oben