WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 22.03.2007, 18:21   #1
neworder666
Newbie
 
Registriert seit: 24.02.2007
Alter: 49
Beiträge: 13


Standard PHP Liste erweitern

hallo!
ich habe ein problem eine liste zu erweitern.
ich habe eine bestehende liste,der ich über ein textfeld weitere einträge hinzufügen möchte.
im prinzip funktioniert das ganze schon,hat aber einen schönheitsfehler,den ich nicht
beheben
kann und deswegen dieses posting.
es wird die liste nämlich nicht erweitert,sondern der eintrag überschrieben.
wie kann ich es anstellen,daß weitere listenelemente hinzugefügt werden und nicht nur einer,
der dann immer überschrieben wird?
hier mein quelltext:
PHP-Code:
</head>
<?php
$c 
'<option value="Brot">Brot</option><option value="Milch">Milch
</option><option value="Butter">Butter</option>'
;
if (isset (
$_POST['abs']))
    {
        
$a $c;
        
$a.='<option value="'.$_POST['eing'].'">'.$_POST['eing'].'</option>'
        
//$a = $a . $b;
        
$c $a;    
?>
<body>
<form id="form1" name="form1" method="post" action="">
  <label>
  <select name="ausw">
    <?php echo $c ?>
  </select>
  </label>
  

Hinzuf&uuml;gen:</p>
  


    <label>
    <input name="eing" type="text" id="eing" />
    </label>
  neue Kategorie

  <label>
  <input type="submit" name="abs" value="Best&auml;tigen" />
  </label>
</p>
<?php
    
?>
</form>
</body>
ich hoffe,daß mir jemand weiterhelfen kann.
vielen dank,alex
neworder666 ist offline   Mit Zitat antworten
Alt 22.03.2007, 18:41   #2
pong
Inventar
 
Benutzerbild von pong
 
Registriert seit: 25.12.2000
Alter: 41
Beiträge: 9.063

Mein Computer

pong eine Nachricht über ICQ schicken
Standard

auf diese Art und Weise gar nicht

Speicher die Werte über ein Session, und bau dort aus dem Array die Liste auf

pong
____________________________________
\"Ein Gewitter reinigt die Luft\", sagte der Mann, nachdem ein Blitz seine Frau erschlug

Nicht klicken!


Erstposteralarm/Beschwerde/Kummerkasten


Verplattet
pong ist offline   Mit Zitat antworten
Alt 23.03.2007, 16:22   #3
neworder666
Newbie
 
Registriert seit: 24.02.2007
Alter: 49
Beiträge: 13


Standard

hy! vielen dank,aber das hat sich schon erledigt.
aber eine andere frage: ich lasse daten in eine mysql datenbank speichern und diese wieder auslesen.
nachdem aber über ein script immer wieder daten hinzukommen, will ich diese in einem backend sortieren lassen.
mache ich die sortierung händisch über phpmyadmin,dann funktioniert das auslesen wunderbar,so wie ich es haben will.
nun möchte ich das aber über ein script realisieren.
ich habe mir das also zusammengebastelt,aber er ändert immer nur das letzte feld und es werden werte
bei den variablen ausgegeben,wo ich nicht ganz nachvollziehen kann,wo die herkommen.
ich kopier mal mein skript rein,vielleicht hat ja jemand eine idee wie ich weiterkomme,oder ob es eine andere lösung gibt und ich mich total verrant habe.
PHP-Code:
<?php
include ("incl.inc.php");
    echo 
'<form acttion="" method="post">';
   
$res mysql_query("select * from getraenke where kategorie = 'alkfrei' ORDER BY Sortierung");
   
$num mysql_num_rows($res);

    
   echo 
"<h1>Alkoholfreie Getränke</h1>";
   echo 
"
"
;
   echo 
"<table border = '0'>";
   
//$a = 1; 
   
while ($dsatz mysql_fetch_assoc($res))
   {
           
$a $_POST['probe'];
         echo 
"<tr>";
        echo 
"<td width = '250'>"  $dsatz["id"] . "</td>";
           echo 
'<input type="hidden" name="verst" value="'.$dsatz["id"].'" />';        
    
$bb $dsatz["id"];
      echo 
"<td width = '250'>"  $dsatz["getraenk"] . "</td>";
      if (
$dsatz["preis"] != "")
      {
      echo 
"<td> €  " $dsatz["preis"] . "</td>"
      }
      else
      {
      echo 
"<td>" $dsatz["preis"] . "</td>"
      } 
      if (
$dsatz["preis"] != "")
      { 
      
       echo 
'<td><input name="probe" type="text" size="3" value="'.$dsatz["Sortierung"].'" /></td>';
      } 
      echo 
'<td>'.$probe.'</td>';
      
//echo '<td>'.$a .'</td>';
       
echo "<td width = '250'>"  $dsatz["Sortierung"] . "</td>";
      echo 
"</tr>";
      
//$a = $a +1;
   
}
   echo 
'<tr>';
   echo 
'<td><input type="submit" name="abs"></td>';
   echo 
"</table>";
   if (isset (
$abs))
   {
       
$sqlab "UPDATE getraenke SET Sortierung = $probe where id = 2";
    echo 
$sqlab;
    
    
mysql_query($sqlab);
   }
   echo 
'</form>';
?>
vielen dank,alex
neworder666 ist offline   Mit Zitat antworten
Alt 23.03.2007, 17:02   #4
pong
Inventar
 
Benutzerbild von pong
 
Registriert seit: 25.12.2000
Alter: 41
Beiträge: 9.063

Mein Computer

pong eine Nachricht über ICQ schicken
Standard

Zitat:
wo ich nicht ganz nachvollziehen kann,wo die herkommen.
Wunder dich das, wennst den neuen Wert erst nach Aufbau deines Dropdown Feldes speicherst?

btw

Code:
select * from
zum Speibn

pong
____________________________________
\"Ein Gewitter reinigt die Luft\", sagte der Mann, nachdem ein Blitz seine Frau erschlug

Nicht klicken!


Erstposteralarm/Beschwerde/Kummerkasten


Verplattet
pong ist offline   Mit Zitat antworten
Alt 23.03.2007, 20:55   #5
Potassium
Inventar
 
Registriert seit: 06.03.2003
Alter: 37
Beiträge: 3.954

Mein Computer

Standard

Zitat:
Original geschrieben von pong
Code:
select * from
zum Speibn

pong
so schlimm auch wieder ned. wenn das projekt ned riesig is oder er alle werte braucht, was solls?
Potassium ist offline   Mit Zitat antworten
Alt 23.03.2007, 21:37   #6
pong
Inventar
 
Benutzerbild von pong
 
Registriert seit: 25.12.2000
Alter: 41
Beiträge: 9.063

Mein Computer

pong eine Nachricht über ICQ schicken
Standard

Zitat:
Original geschrieben von Potassium
so schlimm auch wieder ned. wenn das projekt ned riesig is oder er alle werte braucht, was solls?
Gewöhnt man sich nicht von anfang an die Grundregeln an, so wirds später einfach nur mühsam, sich an sowas anzupassen

pong
____________________________________
\"Ein Gewitter reinigt die Luft\", sagte der Mann, nachdem ein Blitz seine Frau erschlug

Nicht klicken!


Erstposteralarm/Beschwerde/Kummerkasten


Verplattet
pong ist offline   Mit Zitat antworten
Alt 24.03.2007, 07:07   #7
Philipp
verXENt
 
Benutzerbild von Philipp
 
Registriert seit: 01.08.1999
Beiträge: 7.084

Mein Computer

Standard

In letzter Zeit wird der Ton hier im Forum auch immer unfreundlicher

Die "select *" Abfrage ist ja noch das kleinste Problem das dieses Script hat.

Ersetzte:
PHP-Code:
echo '<form acttion="" method="post">'
Durch:
PHP-Code:
echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"post\">"
Ersetze:
PHP-Code:
echo '<td>'.$probe.'</td>'
Durch:
PHP-Code:
echo "<td>".htmlspecialchars($_POST['probe'])."</td>"
Ersetze:
PHP-Code:
if (isset ($abs)) 
Durch:
PHP-Code:
if (isset($_POST['abs'])) 
Ersetze:
PHP-Code:
$sqlab "UPDATE getraenke SET Sortierung = $probe where id = 2"
Durch:
PHP-Code:
$probe = (get_magic_quotes_gpc()) ? $_POST['probe'] : addslashes($_POST['probe']) ;
$sqlab "UPDATE getraenke SET Sortierung = ".$probe." WHERE id = '2'"
Zitat:
ich habe mir das also zusammengebastelt,aber er ändert immer nur das letzte feld
Hat das letzte Feld zufälligerweise die ID 2 (WHERE id = '2')

Ich würde mir außerdem Zend Studio ansehen, da der eingebaute Debugger viele Probleme automatisch erkennt und sogar erklärt wie man es richtig machen muss. Eine 30 Tage Demo gibt es als kostenlosen Download.
Philipp ist offline   Mit Zitat antworten
Alt 24.03.2007, 13:07   #8
Potassium
Inventar
 
Registriert seit: 06.03.2003
Alter: 37
Beiträge: 3.954

Mein Computer

Standard

Zitat:
Original geschrieben von pong
Gewöhnt man sich nicht von anfang an die Grundregeln an, so wirds später einfach nur mühsam, sich an sowas anzupassen

pong
Gutes Argument. Was aber genau stört denn, wenn man das so abfrägt?
Potassium ist offline   Mit Zitat antworten
Alt 24.03.2007, 13:25   #9
bully
Speedtouchfreak
 
Benutzerbild von bully
 
Registriert seit: 07.04.2004
Beiträge: 1.852

Mein Computer

Standard

Wahrscheinlich meint er, das SELECT * FROM sollte vermieden werden, man sollte von Anfang an nur die Spalten selektieren, deren Informationen benötigt werden. Die Ausgabe ist halt übersichtlicher und die Rechnerbelastung für die Abfrage wird in Grenzen gehalten.

Das kann man IMHO aber wirklich auch anders ausdrücken. Wie Phillip schon sagte, der Ton macht die Musik.

lg
bully
____________________________________
Freunde nehmen dich so wie du bist. Freunde verzeihen dir deine Schwächen. Freunde sind treu. Freunde freuen sich dich zu sehen.

Mein Hund ist mein Freund.
Meine Homepage
bully ist offline   Mit Zitat antworten
Alt 25.03.2007, 12:22   #10
neworder666
Newbie
 
Registriert seit: 24.02.2007
Alter: 49
Beiträge: 13


Standard

hallöchen!
vielen dank für die hilfe. ich werd das gleich mal ausprobieren.
das mit der id = 2 war nur ein versuch von mir und ich habs vergessen umzuändern, weil ständig nur eine andere id übernommen worden ist.
also wie gesagt,vielen dank,ich hoffe,daß es jetzt funktionieren wird.
lg,alex
neworder666 ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:36 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag