php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.03.2009, 00:19  
Erfahrener Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 100
Knutschi befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Einzelnen DB-Eintrag über ID anzeigen

n abend zusammen,

hier mal wieder ein punkt an dem ich nicht weiterkomme.
Ich habe eine index.php die mir die akt Einträge (in gekürzter Fassung) der DB in einer Tabelle anzeigt. In dieser Tabelle erzeuge ich hinter jeder zeile einen radio-button. In der DB vergebe ich eine ID mit Auto Increment. Über diese habe ich dann meine eindeutige Zuordnung

Über diesen Radio-Button möchte ich einen Eintrag auswählen und dann über einen Button "ansehen" sämtliche Einträge/Werte die zu diesem Einträge hinterlegt sind angezeigt bekommen. Dies versuche ich über die ID zumachen.

Nach dem Auswählen des Eintrags komme ich auch auf meine "Ansichts-Seite" nur leider bekomme ich nichts angezeigt.

Hier mal der Code von der index.php
PHP-Code:
//SQL-Login
include("sql_sql.php");
$res mysql_query("select * from db");

//Anzahl der Events auslesen
$num mysql_num_rows($res);
echo 
"Derzeit sind $num gemeldet!<p>";

$sqlab "select id, ename, date, time, vcity from db order by date asc";

$res mysql_query($sqlab);

echo 
"Übersicht der akt. Events<br>";
echo 
'<table border="1">';
echo 
"<tr align='center'><td>ID</td><td>XXXXX</td><td>XXXXX</td><td>XXXXX</td><td>XXXXXX</td><td>Auswahl</td></tr>";
while (
$dsatz mysql_fetch_assoc($res))
{
    echo 
"<tr>";
    echo 
"<td>".$dsatz["id"]."</td>";
    echo 
"<td>".$dsatz["ename"]."</td>";
    echo 
"<td align='center'>".$dsatz["date"]."</td>";
    echo 
"<td>".$dsatz["time"]."</td>";
    echo 
"<td>".$dsatz["vcity"]."</td>";
    echo 
"<td align='center'><input type='radio' name='view' value='".$dsatz["id"]."'>";
    echo 
"</tr>";
}
echo 
"</table>";

echo 
'<form action="./event_sign.html"><input type="submit" value="Event anmelden"></form>';
echo 
'<form action="./event_view.php" method="post"><input type="submit" value="Event ansehen"></form>'
und hier die view.php
PHP-Code:
//SQL-Login
include("sql_login.php");

//DB-Eintrag selektieren
$sqlab "select * from db where id = ".$_POST["view"];
$res mysql_query($sqlab);
//DB-Inhalt auflisten

    
echo "ID<br>";
    echo 
$dsatz["id"]."<br>";
    echo 
"<b>Logo</b><br>";
    echo 
$dsatz["fpath"]."<br>";
    echo 
"<b>XXXXXXXX</b><br>";
    echo 
$dsatz["ename"]."<p>";
    echo 
"<b>XXXXXXX</b><br>";
    echo 
$dsatz["hfn"]." ".$dsatz["hsn"]."<br>";
    echo 
$dsatz["hst"]."<br>";
    echo 
$dsatz["hzip"]." ".$dsatz["hcity"]."<p>";
    echo 
"<b>XXXXXXXXXXX</b><br>";
    echo 
$dsatz["vfn"]." ".$dsatz["vsn"]."<br>";
    echo 
$dsatz["vst"]."<br>";
    echo 
$dsatz["vzip"]." ".$dsatz["vcity"]."<p>";
    echo 
"<b>XXXXXXXXX</b><br>";
    echo 
"XXXXX: ".$dsatz["date"].", XXXXX: ".$dsatz["time"]."<p>";
    echo 
"<b>XXXXXXX</b><br>";
    echo 
$dsatz["xxxx"]."<p>";
    echo 
"<b>Preise</b><br>";
    echo 
"XXXXXX: ".$dsatz["pxxxx"]." €<br>XXXXXX: ".$dsatz["bxxxx"]." €<p>";
    echo 
"<b>Beschreibung</b><br>";
    echo 
"<textarea name='descr' cols='30' rows='5'>".$dsatz["descr"]."</textarea>"
Kann mir hier jemand weiterhelfen???
Danke
__________________
B.L.U.B. -> Biohazard Liquid Undefinied B.L.U.B.
Knutschi ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 26.03.2009, 00:28  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

Der Radio button liegt ausserhalb des Forms daher wird der Wert nicht übergeben....
HPR1974 ist offline  
Alt 26.03.2009, 08:24  
Erfahrener Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 100
Knutschi befindet sich auf einem aufstrebenden Ast
Standard

Dank dir.
Leider funktioniert es immer noch nicht.

Liegt es evtl. daran, dass der Grundgedanke von dem Code, dafür gedacht war, den entsprechend ausgewählten Eintrag dann zu editieren?
Kann ich mir aber nicht wirklich vorstellen.

Werde mal testen ob ich überhaupt die ID übertragen bekomme.

edit:
Also die ID bekomme ich übergeben. Dann muss der Fehler zumindest im view-code liegen.
__________________
B.L.U.B. -> Biohazard Liquid Undefinied B.L.U.B.

Geändert von Knutschi (26.03.2009 um 08:28 Uhr). Grund: ID Übergabe getestet und ok
Knutschi ist offline  
Alt 26.03.2009, 08:34  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
$sqlab = "select * from db where id = ".$_POST["view"];
$res = mysql_query($sqlab);
//DB-Inhalt auflisten

echo "ID<br>";
echo $dsatz["id"]."<br>";
David ist offline  
Alt 26.03.2009, 08:53  
Erfahrener Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 100
Knutschi befindet sich auf einem aufstrebenden Ast
Standard

Hi,

danke für das leck. Auch wenns blöd klingt, aber sicherheit steht im mom an hinterster stelle. erstmal die funktion zumal ich ja eh noch einsteiger bin.

wenn du meinen code gelesen hättest, wäre dir aufgefallen dass ich hier nirgends ein array eingebaut habe.

hier mal der orginal code:
PHP-Code:
if (isset($_POST["auswahl"]))
{
   
mysql_connect("","root");
   
mysql_select_db("firma");

   
$sqlab "select * from personen where";
   
$sqlab .= " personalnummer = " $_POST["auswahl"];
   
$res mysql_query($sqlab);
   
$dsatz mysql_fetch_assoc($res);

   echo 
"Führen Sie die Änderungen durch,<p>";
   echo 
"betätigen Sie anschließend den Button<p>";
   echo 
"<form action = 'ud16c.php' method = 'post'>";

   echo 
"<input name='nn' value='" $dsatz["name"]
        . 
"'> Nachname<p>";
   echo 
"<input name='vn' value='" $dsatz["vorname"]
        . 
"'> Vorname<p>";
   echo 
"<input name='pn' value='" $_POST["auswahl"]
        . 
"'> Personalnummer<p>";
   echo 
"<input name='ge' value='" $dsatz["gehalt"]
        . 
"'> Gehalt<p>";
   echo 
"<input name='gt' value='"
        
$dsatz["geburtstag"] . "'> Geburtstag<p>";
   echo 
"<input type='hidden' name='oripn' value='"
        
$_POST["auswahl"] . "'>";

   echo 
"<input type='submit' ";
   echo 
"value='Änderungen in Datenbank speichern'><p>";
   echo 
"<input type='reset'>";
   echo 
"</form>";
}
else
   echo 
"Es wurde kein Datensatz ausgewählt<p>"
und das ist meiner
PHP-Code:
//SQL-Login
include("sql_login.php");

//DB-Eintrag selektieren
$sqlab "select * from db where id = ".$_POST["view"];
$res mysql_query($sqlab);
//DB-Inhalt auflisten

    
echo "ID<br>";
    echo 
$dsatz["id"]."<br>";
    echo 
"<b>Logo</b><br>";
    echo 
$dsatz["fpath"]."<br>";
    echo 
"<b>Ename</b><br>";
    echo 
$dsatz["ename"]."<p>";
    echo 
"<b>Hname</b><br>";
    echo 
$dsatz["hfn"]." ".$dsatz["hsn"]."<br>";
    echo 
$dsatz["hst"]."<br>";
    echo 
$dsatz["hzip"]." ".$dsatz["hcity"]."<p>";
    echo 
"<b>Vname</b><br>";
    echo 
$dsatz["vfn"]." ".$dsatz["vsn"]."<br>";
    echo 
$dsatz["vst"]."<br>";
    echo 
$dsatz["vzip"]." ".$dsatz["vcity"]."<p>";
    echo 
"<b>Date&Time</b><br>";
    echo 
"Datum: ".$dsatz["date"].", Uhrzeit: ".$dsatz["time"]."<p>";
    echo 
"<b>Member</b><br>";
    echo 
$dsatz["member"]."<p>";
    echo 
"<b>Price</b><br>";
    echo 
"Pprice: ".$dsatz["pprice"]." €<br>Bprice: ".$dsatz["bprice"]." €<p>";
    echo 
"<b>Beschreibung</b><br>";
    echo 
"<textarea name='descr' cols='30' rows='5'>".$dsatz["descr"]."</textarea>"
oder war auf meiner seite die Vorfreude größer eben nur noch den Code entsprechend abändern zu müssen und ich habe grundlegende dinge übersehen?

@David:
Danke für die Wink mit dem Zaunpfahl. Bin doch auch echt ne Schlafmütze.
Beim Aufbau des Codes hat er mir noch die komplette DB ausgelesen. Beim Anpassen an die "ID" habe ich die
Schleife rausgemacht. Natürlich gehört sowas
PHP-Code:
while ($dsatz mysql_fetch_array($res)) 
noch eingebaut.
__________________
B.L.U.B. -> Biohazard Liquid Undefinied B.L.U.B.

Geändert von Knutschi (26.03.2009 um 09:15 Uhr). Grund: Bin doch echt verschlafen :D
Knutschi ist offline  
Alt 26.03.2009, 09:16  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Da muss man halt Davids Frage nochmals anders stellen: Wo wird $dsatz gefüllt?
[edit]
Ok hast es doch noch gemerkt
__________________
Gruss
L
lazydog ist offline  
Alt 26.03.2009, 09:56  
Erfahrener Benutzer
 
Registriert seit: 17.12.2008
Beiträge: 100
Knutschi befindet sich auf einem aufstrebenden Ast
Standard Erneut Daten in die gerade erstellt ID schreiben

Dank euch.

Hab hier aber noch was:

Und zwar beim DB-Eintrag erzeugen über ein Formular, gebe ich die Möglichkeit ein Bild hochzuladen. Dieses Bild bekommt einen Dateinamen
der wiefolgt zusammen setzt "ename-id.ext"

Da ich ja die ID für den gerade erstellen Eintrag erst dann bekomme wenn er erzeugt wurde, lese ich die zuletzt erzeugt ID aus und packe diese dann in den Dateinamen.

Beispiel
ID 40 wird erzeugt. Durch die Generierung des Dateinamens und das Abspeichern wird die ID 41 erzeugt. Ich möchte aber den Dateinamen in ID 40 im entsprechenden Feld/Spalte ablegen.
Wie kann ich dies gewährleisten?

Dann hätte ich noch folgendes:
Ich möchte den Speicherort per Variable festlegen.
Aber meine bisherigen Versuche den Code zu ändern
verursachte nur eine Änderung des Dateinamens. Vermutlich ist das mit dem Befehl copy($_FILES["upfile"]["tmp_name"],'pics/'.$name); nicht ganz der richtige weg. In der Detailansicht meiner Einträge soll dann das gespeicherte bild aufgerufen werden.

Hier noch mein Code der gesamten Datei:
PHP-Code:
//SQL-Login
include("sql_login.php");

//Daten in SQL schreiben
if (isset($_POST["submit"]))
   {
    
$sqlab "insert db";
    
$sqlab .= "(ename, hfn, hsn, hst, hzip, hcity, vfn, vsn, vst, vzip, vcity, date, time, member, pprice, bprice, descr) values";
    
$sqlab .= "('".$_POST["ename"]."','".$_POST["hfn"]."','".$_POST["hsn"]."','".$_POST["hst"]."','".$_POST["hzip"]."','".$_POST["hcity"]."',";
    
$sqlab .= "'".$_POST["vfn"]."','".$_POST["vsn"]."','".$_POST["vst"]."','".$_POST["vzip"]."','".$_POST["vcity"]."',";
    
$sqlab .= "'".$_POST["date"]."','".$_POST["time"]."','".$_POST["member"]."','".$_POST["pprice"]."','".$_POST["bprice"]."','".$_POST["descr"]."')";

    
mysql_query($sqlab);
    
//Letzte ID auslesen
$lid mysql_insert_id();
//Aus Ename Leerzeichen entfernen
$evn str_replace(' ','-',$_POST["ename"]);
//Dateierweiterung extrahieren und Dateinamen erzeugen
$exto explode(".",$_FILES["upfile"]["name"]);
$dnamesize count($exto);
$extn $exto[$dnamesize-1];
$name $evn."-ID"."$lid".".$extn";

//Datei unter variablen Dateinamen speichern
copy($_FILES["upfile"]["tmp_name"],'pics/'.$name);

//Pfad speichern
$sqlab2 "insert db (fpath) values ('pics/$name')";

mysql_query($sqlab2);
    
    
$num mysql_affected_rows();
      if (
$num>0)
      {
         echo 
"<font color='#00aa00'>";
         echo 
"Es wurde 1 Datensatz hinzugefügt<p>";
         echo 
"Sie werden in 5 Sekunden weitergeleitet<br>";
         echo 
"</font>";
         echo 
'<meta http-equiv="refresh" content="5; URL=./index.php">';
      }
      else
      {
         echo 
"<font color='#ff0000'>";
         echo 
"Es ist ein Fehler aufgetreten, ";
         echo 
"es wurde kein Datensatz hinzugefügt<p>";
         echo 
"</font>";
      }
   } 
__________________
B.L.U.B. -> Biohazard Liquid Undefinied B.L.U.B.
Knutschi ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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 an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] php mysql detail Seite anzeigen über link Rilana PHP Tipps 2008 6 30.11.2008 17:34
[Erledigt] Bild anzeigen über $name t-stude Datenbanken 8 11.11.2008 15:34
[Erledigt] Änderungsdatum von mehreren Dateien anzeigen perpicx PHP Tipps 2008 7 16.09.2008 16:26
CMS Eintrag anzeigen funktioniert nicht soffi PHP Tipps 2008 4 11.09.2008 14:20
Spamversand über Formular, ohne dass ich es merke? Kookaburra PHP Tipps 2008 8 05.09.2008 16:40
MySQL: Select: Alles ordnen aber 1 Eintrag zuerst anzeigen SvenLittkowski Datenbanken 12 29.10.2007 21:24
Sortierreihenfolge nach Eintrag oder letzter Änderung leuktra Datenbanken 7 29.01.2007 19:20
Einzelnen Eintrag aus DB holen? Cytrix PHP Tipps 2006 7 22.02.2006 19:54
nur letzten eintrag aus der mysql tabelle anzeigen lassen DaronM PHP Tipps 2007 7 14.11.2005 17:30
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
Eintrag wird nicht eingetragen (Kontrollfunktion lügt?) PHP Tipps 2005-2 0 02.10.2005 12:00
grafik anzeigen für neuen eintrag m-elssner PHP Tipps 2005-2 7 28.08.2005 18:02
[Erledigt] Import einer *.sql-Datei über den mysql-client Datenbanken 2 25.05.2005 19:03
[Erledigt] Abfrage ob Eintrag schon in DBbevor Eintrag gespeichert wird Datenbanken 6 06.08.2004 22:10
Umleitung über Meta-Angaben im Header abhängig vom Host PHP Tipps 2004 7 14.06.2004 12:34

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
echo(\ <input name = \\nn\\> nachname<p>\);, http://www.php.de/php-einsteiger/53380-erledigt-einzelnen-db-eintrag-ueber-id-anzeigen.html, php einen eintrag aus sql holen, php datenbank auflisten, id eines db eintages zurück geben, sql php einzelnen datensatz aneigen, php $id variable aus datenbank holen, php einzelnen wert aus datenbank holen, db id finden, letzte id aus datenbank holen, php id anzeigen, id anzeigen php, php letzte id aus db holen, $res = mysql_query($sqlab), ansehen.php?id=, einzelner wert aus datenbank nach id sortiert, php id eines gerade erstellten eintrags holen, [php/mysql] id auswählen und aus db auslesen, php id zu eintrag finden, php id auswählen aber name anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:31 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum