Frage von Forgottencoder, 48

Wie mit Php Datenbanken auslesen?

Ich will mit PhP eine Datenbank auslesen und zwar soll es zwei variablen geben einmal die Anzahl und einmal die Farbe .. Als Beispiel 50, 100, 150, 200 stück und Farbe Schwarzweiß auf einer Seite auf beiden seine und Farbig auf einer und beiden Seiten. Es soll ein kleiner Calculator sein ich weiß aber nicht wie ich damit anfangen soll weiß da einer wie ich das regeln kann :) Danke für eure Hilfe .. Lg Lucas

Antwort
von DerCo, 25

Erst einmal muss die Datenbank existieren und die Tabellen für Farbe und Stückzahl müssen angelegt sein.

Nehmen wir an, die Tabelle heißt Farben und die Struktur ist:
Id  Int(11)
Farbe varchar(64);

Ausgelesen wird sie über eine Query, etwa

$query = "SELECT * FROM Farben ORDER BY Farbe";

$result = mysqli_result($query) or die (mysql_error());
// das mit dem die() solltest du nur in der Testphase machen.

$sel = '<select name="Farbe" size="1">'."\n";
while ($row = mysqli_fetch_array($result, MYSQL_ASSOC){
 $sel .= '<option value="'.$row['Id'].'">'.$row['Farbe'].'</option>'."\n";
}
$sel .= '</select>';

// Und nun an gewünschter Stelle:
echo $sel;

Natürlich ist das nur ein schnelles Beispiel. Wenn du Farben mit Umlauten hast, wirst du evtl. noch utf8_encode() benötigen und anderes Zeug. Aber so als quick'n'dirty-Beispiel sollte es genügen.

Bitte beachten, dass du vor diesen paar Zeilen natürlich eine Verbindung zur Datenbank aufgebaut haben musst, sonst geht eh nix.

Hier ein paar weitere Infos dazu:
http://www.selfphp.de/praxisbuch/praxisbuchseite.php?site=263&group=45

Antwort
von xGlumi, 27
$db_server = "localhost";
$db_user = "root";
$db_pass = "";

$db_datenbank = "DeineDatenbank";

mysql_connect($db_server, $db_user, $db_pass);
mysql_select_db($db_datenbank);

$sql= mysql_query("SELECT * FROM DeinTable");
while ($match = mysql_fetch_object($sql)){
$new_farbe = $match->farbe;
$new_anzahl = $match->anzahl;
}

MFG xGlumi

Kommentar von RakonDark ,

könnte mann mal in die gegenwart springen und nicht diese nicht mehr benutzen module als beispiele anführen .

pdo oder mysqli nutzen , danke

Kommentar von xGlumi ,

Solange sie noch ohne Einschränkungen funktionieren SIND diese noch die Gegenwart, also geh mit deinen unnützen Kommentaren woanders hin, danke.

MFG xGlumi

Kommentar von RakonDark ,

das ist die so ziemlich dämlichste antwort die ich gehört habe , solange ein schloss was unsicher ist noch funktioniert ist es ein gutes schloss.

schwachsinn , es ist ein unbrauchbares schloss, was man nciht mehr nutzen sollte ,

genauso wie passwörter die aus 3 zeichen bestehen , denk mal drüber nach .

wer sich nicht entwicklen will, kann es für sich tun , es ist aber bei php.net etc schon lange umgestellt auf mysqli , weil es sinn macht , nicht noch einbruchsunsichere sache als normal zu verhöckern .


dasd du zu faul bist  und leuten die anfangen, unbrauchbares anbietets , liegt echt an dir , das musst du dann nicht noch für toll halten, eher für , was ich nicht kann lassre ich lieber und bringe nicht noch veraltetes bei was zu erheblichen schäden führen kann .


Kommentar von RakonDark ,

für die dokumentation :

Deprecated features in PHP 5.5.x ¶


ext/mysql deprecation ¶

The original MySQL extension is now
deprecated, and will generate E_DEPRECATED errors
when connecting to a database. Instead, use the
MySQLi or
PDO_MySQL extensions.


und wie bei allem , wer mit veralteter software einen server laufen hat , darf sich nicht wundern . Das ist ein generelles sicherheitskonzept das jeder lernen muss .

ich wüsste auch kein provider der so dumm ist alte versionen weiterhin anzubieten .

Kommentar von DerCo ,

doch, leider einige. Strato, 1&1, domaingo, ... die wenigstens blockieren den Mist, weil die Kunden sonst ja abspringen könnten. da ist die mögliche Gefahr minder bewertet als die paar Penunzen, die sie rippen können :-(

Antwort
von xGlumi, 19

Redest du von einer MySQL-Datenbank?

MFG xGlumi

Kommentar von Forgottencoder ,

Ja würde sowas gehen oder sollte ich das irgendwie anders versuchen?
Lg

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten