Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
tabellen abfrage von mysql-db über php [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
tabellen abfrage von mysql-db über php


 
seneth
17-02-2004, 18:14 
 
Hallo Hallo ,
also nur mal vorneweg ich habe gesucht ,gelesen und probiert und das
Problem existiert immernoch und jetzt hätt ich gern nen Stoß in die richtige
Richtung:(

mein Prob
1.Lamp system (wenig ahnung )
2.mysql DB fertig und im großen und ganzen funktionstüchtig
3.PHP Seiten laufen auch bis auf eins das Suchformular und da fangen die
Schwierigkeiten an
meine Datenbank inventar hat mehrere Tabellen
wenn ich von meiner suchseite auf nur eine tab zugreife no prob
läuft wie geschmiert :p
wenn ich aber über die eine auf die andere zugreife :mad:

die tabellen sind Ort ( Onr,Ort )
Gerät (ID,Invnr,Bez,Onr,Raum,usw)

session start auf jeder Seite sonst läuft der Spaß ja nicht

erste Seite inv_suche.php

print "<form method=\"post\" action=\"inv_su_aus_f1.php\">";
print "<table><tr><td>
<input type\"taxt\" name\"ortsuche\">
</td></tr></table>";

zweite Seite inv_su_aus_f1.php

$suche1="select * from Gerät";
if($ortsuche != "" )
{
$ suche2="WHERE Ort= ".$ortsuche;
}

die suche wird am ende zusammengesetzt, und die Variablen sind initialisierrt daran liegt es nicht
wie gesagt eine andere Abfrage auf dem selben level funktioniert und das
einzige was anders ist ist die das diese abfrage sich nur auf eine tabelle bezieht

also a little bit hilfe wäre nett auch wenn diese frage schon beantwortet
wurde auf anderer Seite aber nach suchen in hunderten seiten seh ich
den Wald vor lauter Bäumen nich mehr:confused:

 
schmalle
17-02-2004, 18:25 
 
die tabelle heisst doch nicht wirklich gerät oder? :rolleyes:

und benutze bitte mal $_POST['name_der_var'];

 
seneth
17-02-2004, 18:31 
 
doch doch die Tabelle heist Gerät

und ich habe die Variablen schon initialisiert am Anfang der Seite ;)

$ortsuche =HTTP_POST_VARS["ortsuche"];

also kann ich sie ja benutzen
daran liegt es leider nicht
sorry

 
marc75
17-02-2004, 18:38 
 
<input type\"taxt\" name\"ortsuche\">
//wie wärs mit type=text statt type taxt

 
seneth
17-02-2004, 18:42 
 
Peinlich peinlich aber was soll ich sagen
der Tag war lang und meine Finger vertippen sich gern
das wars leider auch nicht :(

tut mich leid trotzdem danke :dontknow:

 
derHund
17-02-2004, 18:50 
 
Original geschrieben von seneth
doch doch die Tabelle heist Gerät

und ich habe die Variablen schon initialisiert am Anfang der Seite ;)

$ortsuche =HTTP_POST_VARS["ortsuche"];

also kann ich sie ja benutzen
daran liegt es leider nicht
sorry

sicher, daß da was drinsteht?

 
seneth
17-02-2004, 19:52 
 
nu ja ich denke schon
weil wenn ich mit Onr abfrage gehts ja weil die nummer auch in der Geräte
Tabelle steht darum dachte ich mach die Abfrage anders


suche1=select *from Gerät;
if ($ortsuche != "")
{
suche2=" WHERE Gerät.Onr=Ort.Onr and Ort= ".$Ortsuche;
}


geht auch nichthat er die Tabelle Ort nicht erkannt
also ok hab ihm die Tabelle auch noch in die select geschrieben
sagt er wieder column='Plauen' nicht erkannt

hab ich weiter gesucht und inner join danach outer join usw
ausprobiert wie gesagt nach ein paar hundert Seiten mit Tips und Tricks
seh ich keine Fehler mehr ich glaub ich brauch ne Pause:confused:

 
derHund
17-02-2004, 20:21 
 
hmm,

leider gelingt es mir nicht wirklich, deinen gebrabbel (sorry) irgend eine information zu entnehmen ... :confused:

alle geräte eines orts? sollten sich mit nem join finden lassen ...


... " Ort= '".$Ortsuche."'";

 
asp2php
17-02-2004, 21:01 
 
mir fällt auf, dass jedes mal wenn du was angibst, sind noch mehr Fehler zu sehen. Also warum postest du nicht einfach deine echte Quellcode, oder ist das ein Staatsgeheimnis :rolleyes: z.B. mal schreibst du $suche1= dann suche1=, ausserdem eine Spalte von einer anderen Tabelle in Where-Klausel einzubauen, ohne die Tabelle in From anzusprechen, geht ja auch nicht. Ach ja wie soll denn das Formular was senden, wenn sowas wie
<input type"taxt\" name\"ortsuche\">
steht. Besser wäre:
print "<input type=\"text\" name=\"ortsuche\">";
IMHO muss du Gerät in [] reinpacken. Ort ist vom Typ String, also auch in '' rein:

$suche1="select * from [Gerät]";
if (isset($_POST['ortsuche']))
{
$suche2=",Ort WHERE [Gerät].Onr=Ort.Onr and Ort.Ortsname='".$_POST['ortsuche']."'";
}

 
seneth
18-02-2004, 10:13 
 
OK ich sehs ja ein ,der Tag war aber wirklich seeeehr lang:(

ich versuch snoch mal hier is der code

Seite 1 -SuchFormular

<?php
//Tabellenausgabe Suche
session_start();
print "<html><head><title>Suche</title><meta http-equiv=\"Content-Type\" content=\"text/html charset=iso-8859-1\"></head>";
print "<body bgcolor=\"#10FF88\">";
print "<div align=\"center\">";
print "<p>&nbsp;</p>";

print "<table width=\"75%\" border=\"1\">";
print "<form method=\"post\" action=\"inv_su_aus_f1.php\">";
print "<tr>";
print "<td>Ort</td>";
print "<td>";
print "<input type=\"text\" name=\"ortsuche\">";
print "</td>";
...
print "</tr>";
print "</form>";
print "</table>";
print "</div>";
?>


und nun Seite 2-Abfragen


<?php
session_start();

//Variable definieren
$ortsuche = $HTTP_POST_VARS["ortsuche"];
$raumsuche = $HTTP_POST_VARS["raumsuche"];
...
// Variable fuer Loeschen und Bearbeiten
$idf2 = $HTTP_POST_VARS["idf"]; //Feld id
$inrf2 = $HTTP_POST_VARS["inrf"]; //Feld inr
$snrf2 = $HTTP_POST_VARS["snrf"]; //Feld snr
$ortf2 = $HTTP_POST_VARS["ortf"]; //Feld ort
...

// Verbindung zur DB herstellen

If ($frmausg = @mysql_connect($HTTP_SESSION_VARS["sdb_server"],$HTTP_SESSION_VARS ["sdb_user"],$HTTP_SESSION_VARS["sdb_password"]))
{
print "<center>Verbindung zum MySQL-Server erfolgreich<br>\n";
print "Ihre Session - ID: ".$HTTP_POST_VARS["PHPSESSID"]."<br></center>\n";
If ($db_select = mysql_select_db($HTTP_SESSION_VARS["sdb_name"],$frmausg))
{
print "<center>Auswahl der Datenbank erfolgreich</center>\n";
}
else
{
print "<center>Datenbank konnte nicht ausgew&auml;hlt werden.<br>\n";
print "Fehlermeldung: ".mysql_error."<br>\n";
print "Fehlernummer: ".mysql_errno."<br></center>\n";
exit;
}

}
else
{
print "<center>Keine Verbindung m&ouml;glich<br>\n";
print "Fehlermeldung: ".mysql_error."<br>\n";
print "Fehlernummer: ".mysql_errno."<br></center>\n";
exit;
}



// Erzeugen der MySQL-Abfrage

$suche1 = "SELECT * FROM Gerät ";
If ($ortsuche != "")
{
$suche2 = "WHERE Onr = ".$ortsuche;
}

...

//zum verständnis die Abfrage
$abfrage = $suche1.$suche2.$suche3.$suche4.$suche5.$suche6." ORDER BY 'id'";



meine xter versuch der suche war

$suche1 = "SELECT * FROM Gerät ";
If ($ortsuche != "")
{
$suche2 = ",Ort WHERE Gerät.Onr=Ort.Onr and Ort.Ort = ".$ortsuche;
}



dann hatte ich noch einen Versuch mit InnerJoin
und einen mit Outer Join

aber das ergebnis war meist
Anfrage fehlgeschlagen: Unknown column 'Plauen' in 'Where clause'

ich hoffe das war diesmal verständlicher also fals euch nioch was einfällt
ich probier jetzt erstmal einpaar änderungen
cu
:)

 
seneth
18-02-2004, 10:40 
 
Hallo noch mal
es läuft :rocks: danke allen beteiligten die Lösung war



$suche1="select * from Gerät";
If ($ortsuche != "")
{
$suche2=",Ort WHERE Gerät.Onr=Ort.Onr and Ort.Ort= '".$Ortsuche."'";
}


es sind eben doch immer die Kleinigkeiten :D:rolleyes:
also Danke nochmal asp2php und der Hund
eure hinweise waren sehr nützlich
auch wenn ich das gestern abend nicht mehr überzogen hab

cu seneth

 
asp2php
18-02-2004, 10:52 
 
noch was :D

versuchst mal alles in Englisch zu halten, von Tabellennamen,
Spaltnnamen, bis hin zu den Variablen in PHP (und Namenskonvention
nicht vergessen) und nach Möglichkeit die Kommentare im Code auch in
Englisch. Somit kommst du selten in schwierigkeiten mit Sonderzeichen &
Co. Ausserdem es ist leichter für dein Nachfolger, den Sinn des Codes zu
verstehen. Ausserdem siehts auch im Code viel schöner aus. Ich hasse es,
wenn ich im Code varName in irgendeine andere Sprache als Englisch sehe :p

 
seneth
18-02-2004, 11:32 
 
:eek:
Och menno muß das sein
ich kann doch nix english :(

und ja variablen namen usw
mea culpa ich werde mich bessern ehrlich ;)

cu

 
Abraxax
18-02-2004, 11:39 
 
Original geschrieben von seneth
ich kann doch nix english :( http://dict.leo.org

 
asp2php
18-02-2004, 11:41 
 
Original geschrieben von seneth
:eek:
Och menno muß das sein
ich kann doch nix english :(


dann wird aber langsam Zeit, englisch zu lernen, denn Programmierer und kein Englisch, das haut nie hin, ausserdem im open source Bereich ist das meiste in Englisch, wenn du auf die deutsche Übersetzung wartest, bist du mit deinem Kenntnissen schon hinterm Mond.

 
seneth
18-02-2004, 11:51 
 
:D
was seid ihr lieb

ich wuste doch das ich nen fehler mit der Programmierung gemacht hab
mist wer lernt den auch so was
:rofl:

aber wie schon meine Mutter sagte "hättste mal was anständiges gelernt"

zuuuu spät

:D

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:27 Uhr.