zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden [PHP/SQL] Nur bestimmte Werte einer Zeile mit Bedingung ausgeben

Antwort
 
LinkBack Themen-Optionen Ansicht
  #11 (permalink)  
Alt 09.06.2014, 22:43
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Es würde vermutlich mehr helfen, wenn du selbst eine Doku liest. Da steht es besser, als wir das erklären können.
PHP: PHP-Handbuch - Manual

Das was du Wissen willst, steht unter Datenbanken, aber dir muss klar sein, dass du schon in diesem Einzeiler ein Sicherheitsloch eingebaut hast. Insofern ist eine gründlicher Einstieg mit lesen unentbehrlich, da du ansonsten schnell einen kaputten Server inkl. Spamschleuder programmiert hast.
Mit Zitat antworten
Sponsored Links
  #12 (permalink)  
Alt 09.06.2014, 22:46
Benutzerbild von suckey
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 09.12.2012
Ort: Diedersdorf
Beiträge: 34
suckey befindet sich auf einem aufstrebenden Ast
Standard

Gut, dankesehr. Ich befasse mich damit und habe mit der Referenz auch schon einen Lösungsansatz.

Edit: Ein wenig nachharken, muss ich dennoch - mit dem Code:
PHP-Code:
$result mysql_query("SELECT matchID, matchEnemyClanID, matchOverallResult FROM asps_mysg_matches ORDER BY matchGameID = '1'  LIMIT 3");
            if(!
$result) {
                
mysql_error();
                exit();    
            }
            
            
$row mysql_fetch_row($result);
            echo 
$row[0];
            echo 
$row[1];
            echo 
$row[2]; 
Bekomme ich dennoch nur die erste Zeile ausgegeben, wie kann ich nun z.B. die Ergebnisse der 2. Zeile auslesen?

Frohe (restliche) Pfingsten.
Grüße, suckey.

Geändert von suckey (09.06.2014 um 23:16 Uhr)
Mit Zitat antworten
Sponsored Links
  #13 (permalink)  
Alt 10.06.2014, 01:02
?!?
XHTMLforum-Kenner
 
Registriert seit: 20.03.2013
Beiträge: 1.638
explanator sorgt für eine eindrucksvolle Atmosphäreexplanator sorgt für eine eindrucksvolle Atmosphäre
Standard

Deine Abfrage ist Unsinn. Ein Link zum lernen habe ich dir doch schon gegeben, lies es dir doch mal durch.

Code:
"SELECT matchID, matchEnemyClanID, matchOverallResult 
FROM asps_mysg_matches 
WHERE matchGameID = 1"
und mit Variabel
Code:
"SELECT matchID, matchEnemyClanID, matchOverallResult 
FROM asps_mysg_matches 
WHERE matchGameID = " . $id
Der Punkt ist die Verkettung. Beachte dabei auch die SQL-Injections.

Darüber hinaus ist die mysql-Erweiterung von PHP veraltet. In der offiziellen Dokumentation wird klar empfohlen, auf die Extension mysqli oder PDO umzusteigen.

Seit PHP 5.3 gehört die veraltete mysql Erweiterung nicht mehr zur Standard Installation.
Seit PHP 5.5 ist die mysql Erweiterung offiziell als deprecated (= missbilligt) gekennzeichnet.
Ab PHP 5.6 wird die Erweiterung vermutlich ganz fallen gelassen.
__________________
"Wieso ist der Code schrott, ich dachte hier seien Profis..."
Aus einem Forum.
Mit Zitat antworten
  #14 (permalink)  
Alt 10.06.2014, 09:55
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von suckey Beitrag anzeigen
Bekomme ich dennoch nur die erste Zeile ausgegeben, wie kann ich nun z.B. die Ergebnisse der 2. Zeile auslesen?
und um das zu beantworten. Auch das steht in jeder Doku, weil es einfach die eine absolute Grundlage ist. Du kannst die Datensätze mit einer while Schleife aus dem SQL Ergebnis holen. Wenn die fetch Funktion keine Rückgabe gibt wird die Schleife beendet.

Schematisch in etwa so:
PHP-Code:
while($row fetch...) {
// Ausgabe/Verarbeitung der Daten

Wird z.b. auf den von Explanator gezeigten Seiten beschrieben
PHP fr dich - Anzeigen der abgefragten Daten

Aber wie gesagt, das was du machst ist gefährlich für deine Daten und evtl. für die Menschen die sich mit dir einen Server Teilen müssen (wenn du ein shared Hosting Angebot nutzt), daher solltest du dich wirklich intensiver mit Datenbanken beschäftigen bevor du anfängst in's blaue hinein zu programmieren.
Neben den Sicherheitsaspekt, solltest du Wissen was Normalisierung ist, wie du Indizes setzt und was joins sind.
Mit Zitat antworten
  #15 (permalink)  
Alt 10.06.2014, 15:18
Benutzerbild von suckey
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 09.12.2012
Ort: Diedersdorf
Beiträge: 34
suckey befindet sich auf einem aufstrebenden Ast
Standard

Super, funktioniert wie es soll. Dankesehr
Mit Zitat antworten
  #16 (permalink)  
Alt 10.06.2014, 15:29
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Ich hoffe, dass du dir die anderen Ratschläge auch zu Herzen nimmst, denn wie gesagt du schädigst mit Fehlerhaften Skripten und Abfragen auch andere.
Mit Zitat antworten
  #17 (permalink)  
Alt 10.06.2014, 15:56
Benutzerbild von suckey
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 09.12.2012
Ort: Diedersdorf
Beiträge: 34
suckey befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von protonenbeschleuniger Beitrag anzeigen
Ich hoffe, dass du dir die anderen Ratschläge auch zu Herzen nimmst, denn wie gesagt du schädigst mit Fehlerhaften Skripten und Abfragen auch andere.
Selbstverständlich mach ich das

Wobei das Skript nun fast komplett läuft. Mir ist aber gerade noch eine Sache aufgefallen, die mich wundert: ich bekomme mit dem folgenden Code immer noch Ergebnisse, obwohl dies eigentlich nicht der Fall sein sollte.

PHP-Code:
$sql "SELECT matchID, matchEnemyClanID, matchOverallResult FROM asps_mysg_matches WHERE matchGameID = " $matches_gameid;
$result mysql_query($sql);
while(
$row mysql_fetch_row($result));
    echo 
$row[0];
    echo 
$row[1];
    echo 
$row[2];

(Wenn die $matches_gameid ungleich 1 ist - dabei sind in der Datenbank bisher nur Matches mit der ID 1. Die Variable $matches_gameid habe ich geprüft und sie wird richtig ausgewertet.)

Grüße.
Mit Zitat antworten
  #18 (permalink)  
Alt 10.06.2014, 16:18
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von suckey Beitrag anzeigen
Selbstverständlich mach ich das
Dein code siehgt nicht danach aus. Du hast nach wie vor vermutlich ein Sicherheitsloch in deinem Code, je nachdem von wo die Variabel $matches_gameid kommt. Ist das eine Usereingabe?
Ausserdem sieht man dem Code an, dass du dir die Seiten dir wir dir gezeigt haben, nicht angeschaut hast.

Zu deiner Frage kann man nichts sagen, wir kenen nicht den Inhalt deiner Datenbank.
Mit Zitat antworten
  #19 (permalink)  
Alt 10.06.2014, 16:20
Benutzerbild von suckey
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 09.12.2012
Ort: Diedersdorf
Beiträge: 34
suckey befindet sich auf einem aufstrebenden Ast
Standard

Nein die Variable ist keine Usereingabe. Daher fällt die SQL Injection flach.

Der Inhalt der Datenbank:


Ich bekomme wie gesagt immer eine Ausgabe, egal welche ID die Variable $matches_gameid annimmt.

Edit: Mein Fehler, die Variable wird nicht korrekt ausgewertet. Die Variable bleibt immer auf 1.
Via ORDER BY, kann ich die Ergebnisse ja sortieren. Ich würde gerne die Matches in absteigender Reihenfolge anzeigen (d.h. mit der höchsten matchID zuerst) - wo muss ich diese Abfrage einbauen? Sollte ich dies in die folgende Zeile packen, bekomme ich einen Fehler.

PHP-Code:
$sql "SELECT matchID, matchEnemyClanID, matchOverallResult FROM asps_mysg_matches WHERE matchGameID = " $matches_gameid "ORDER BY matchID"

Geändert von suckey (10.06.2014 um 16:39 Uhr)
Mit Zitat antworten
Sponsored Links
  #20 (permalink)  
Alt 10.06.2014, 16:42
Benutzerbild von protonenbeschleuniger
Verbesserer
XHTMLforum-Kenner
 
Registriert seit: 06.09.2007
Beiträge: 4.977
protonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblickprotonenbeschleuniger ist ein wunderbarer Anblick
Standard

Die Fehlermeldung lautet?
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bestimmte Tage ausgeben lassen andre-ne Serveradministration und serverseitige Scripte 9 15.03.2013 11:39
Neues Karriereportal (Bitte um Feedback) ThomasE Site- und Layoutcheck 23 02.01.2012 17:44
Sitecheck für Urlaubsunterkunft in Kroatien Miso Site- und Layoutcheck 11 19.10.2008 21:53
Festanstellung bei der Xing AG als Web Developer (HTML/CSS) NEOX Offtopic 10 17.07.2008 18:11
nur bestimmte Anzahl von Datensätzen ausgeben. paracelsus Serveradministration und serverseitige Scripte 6 09.09.2007 12:01


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:34 Uhr.