Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

Anfänger Frage..





Frage

hallo. bin durch google immerwieder auf das Forum hier gestoßen, hab meine fragen hier immer beantwortet hier gefunden. aber dieses hier nicht, daher hab ich mich registriert.. so: hab eine DB mit Kundendaten. die daten bekomm ich via CSV, über PHPMyadmin füg ich sie rein, allerdings MUSS der erste Feld (ID) leer bleiben! da die IDs in der DB anders sind als die in der CSV, weiß nicht wie ich das umgehen soll? zweite Frage: ich brauche eine Abfrage, die mir folgendes anzeigt: zeige mir NUR kunden die in der Spalte: produkte Produkt: 44€ gekauft haben diese Spalte ist momentan manuell gefüllt mit produkt 44€ oder produkt 99€ ich will es aber so machen, dass diese Werte FEST in die DB bleiben! das heißt: wenn ich einen Wert hinzfügen sollte, der heißt: produkt102, dann soll fehler kommen, wie mach ich das mit SQL? sollte dann später in PHP eingebunden werden, mit mySQL_Query ? oder? [*][sup][i] *Threadedit* 21:20:12, 04.03.2008 Admininfo: zum Artikel/ Betreff. Bitte beachte [u][url=https://supportnet.de/faqsthread/840]FAQ 2, #4[/url][/u] bei deiner nächsten Anfrage.[/i][/sup]

Antwort 1 von Fassy91

so jetzt mal bitte im klaren deutsch.

Du hast eine CSV die du per phpMyAdmin einfügen lässt oder ?

Dann brauch ich einmal die Struktur der Tabelle.

Zu den Querys :

Produkt 44 : "SELECT * FROM tab1 WHERE produkt=44";
Produkt 99 : "SELECT * FROM tab1 WHERE produkt=99";

den rest verstehe ich nicht was du meinst.

mfg
Fabi

Antwort 2 von Mohamedal_hakim

hallo

ich habe deine Formel dementsprechend umgeschrieben:

<?php
$produkt44 = "SELECT * FROM Kundendaten WHERE produkte = produkt 1";
$qry = mysql_query($produkt44);
$result = mysql_fetch_assoc($qry);
while ($result = mysql_fetch_assoc($qry))
 {
 echo "<table border='1'><tr><td>".$result['id']."</td><td>".$result["vorname"]."</td><td>".$result["nachname"]."<td>".$result["telefon"]."<td>".$result["strasse"]."<td>".$result["plz"]."</td><td>".$result["ort"]."</td><td>".$result["produkte"]."</td></tr></table>";
 }
?>


allerdings bekomm ich folgende Fehlermeldung:


Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\CallCenterProjekt\admin.php on line 50

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\CallCenterProjekt\admin.php on line 51


finde aber leider den Fehler nicht, kannst du mir sagen, was da falsch ist?

Antwort 3 von Fassy91

du hast vergessen dich zu einem mySQL Server zu connecten.

Das geht so :

mysql_connect(SERVERIP,USER,PASSWORT);

Danach noch die Datenbank auswählen

mysql_select_db(DBNAME);

fertig

Antwort 4 von Mohamedal_hakim

steht doch alles in der include.php
deswegen hab ich sie doch includiert?
hier funktioniert es:
$alles = "SELECT *FROM kundendaten";
$qry = mysql_query($alles);
$result = mysql_fetch_assoc($qry);

while ($result = mysql_fetch_assoc($qry))
{

echo "<table border='1'><tr><td>".$result['id']."</td><td>".$result["vorname"]."</td><td>".$result["nachname"]."<td>".$result["telefon"]."<td>".$result["strasse"]."<td>".$result["plz"]."</td><td>".$result["ort"]."</td><td>".$result["produkte"]."</td></tr></table>";
	}



?>


nur bei dem nicht:
<?php
include ('db.php');  //Datenbank
$produkt44 = "SELECT * FROM Kundendaten WHERE produkte = produkt 1";
$qry = mysql_query($produkt44);
$result = mysql_fetch_assoc($qry);
while ($result = mysql_fetch_assoc($qry))
 {
 echo "<table border='1'><tr><td>".$result['id']."</td><td>".$result["vorname"]."</td><td>".$result["nachname"]."<td>".$result["telefon"]."<td>".$result["strasse"]."<td>".$result["plz"]."</td><td>".$result["ort"]."</td><td>".$result["produkte"]."</td></tr></table>";
 }
?>


Antwort 5 von rabies

Der Fehler entsteht, da MySQL nichts mit
SELECT * FROM Kundendaten WHERE produkte = produkt 1
anfangen kann.

"produkt 1" soll genau was repräsentieren?

Von welchem Datentyp ist die Spalte "produkte" & was steht da so schönes drin?


Zusätzlich kannst Du Dir in aller Regel die Zeile
$result = mysql_fetch_assoc($qry);
sparen. Der Aufruf macht nur mithilfe einer Schleife wirklich Sinn. So holst Du einen Datensatz und jagst hinterher noch einmal die while-Schleife darüber.

--rabies.