php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.06.2010, 13:09  
Neuer Benutzer
 
Registriert seit: 22.06.2010
Beiträge: 19
PHP-Kenntnisse:
Anfänger
php_1975 ist zur Zeit noch ein unbeschriebenes Blatt
Standard [Erledigt] drop down menü + mysql

hi leute,


hab ein drop down menü programmiert das seine info aus der mysql datenbamk nimmt, jedoch gibt er mir da irgendwie beim neuladen im drop down menü auch die id mit an.
was hab ich falsch gemacht?

hoffe jemand versteht was ich meine, da es schwierig zu erklären ist nur mit worten.

würde mich über eine antwort freuen.


mfg

vera

hier meine 3 scripte:

class.php

PHP-Code:
<?php

class dbzugriff
{
    public 
$row;
    public 
$num;
    public 
$queryc;
    function 
init($query)
    { 
        
$this->queryc $query;
        if (
$this->queryc != '')
            
$this->num mysql_num_rows($this->queryc);
    }
    function 
readrow()
    {
        if (
$this->queryc!='')
            
$this->row mysql_fetch_array($this->querycMYSQL_ASSOC);
        if (
$this->row!='')
            foreach (
$this->row as $k=>$elem)
            {
                
$this->$k $elem;
            }
    }
}


function 
result($statement)
{
    
$DBdatenbank "vermietung";
    
$DBServer     "localhost";
    
$DBuser       "root";
    
$DBpasswort   "";
    
$link MYSQL_CONNECT($DBServer$DBuser$DBpasswort) or die(mysql_error());
    
mysql_select_db($DBdatenbank,$link) or die(mysql_error());
    
$resulty mysql_query($statement,$link);
    if (
mysql_error()) 
        die (
"MySQL-Error: " mysql_error());
    return 
$resulty;
}

?>
einheit.php

PHP-Code:
<html>
<
body>
    <
link rel="stylesheet" type="text/css" href="anmeldung.css">

    <
p><div id="schrift"><h1 align="center">Mietvertrag</h1></p>

    <
div id="zentrieren">
    <
form action="mietvertrag.php" method="post">
        
        <
table>
            <
tr>
                <
td></td>
                <
td><font size="5">Einheit:</td>
                <
td><input name="raum">
            </
tr>
            <
tr>
                <
td></td>
                <
td><font size="5">Gr&ouml;&szlig;e:</td>
                <
td><input name="qm"></td>
            </
tr>
            <
tr>
                <
td></td>
                <
td><font size="5">Info:</td>
                <
td><textarea name="info"></textarea></td>
            </
tr>
            <
tr>
                <
td></td><td></td><td></td>
            </
tr>
            <
tr>
                <
td></td><td></td>
                <
td><input type="submit" name="gesendet"></td>
            </
tr>
        </
table>
    </
form>
    </
div>

</
body>
</
html

mietvertrag.php

PHP-Code:
<?php

include_once("class.php");

    if(isset(
$_POST["gesendet"]))
    {
        
mysql_connect("""root");
        
mysql_select_db("vermietung");
        
        
$sqlab"insert vertrag";
        
$sqlab.= "(mieter, raum, kaltmiete, qm, nebenkosten";
        
$sqlab.= ") values ";
        
$sqlab.= "('" $_POST["mieter"] . "', ";
        
$sqlab.= "'" $_POST["raum"] . "', ";
        
$sqlab.= "'" $_POST["kaltmiete"] . "', ";
        
$sqlab.= "'" $_POST["qm"] . "', ";
        
$sqlab.= "'" $_POST["nebenkosten"] . "')";
        
        
mysql_query($sqlab);
        
        
$nummysql_affected_rows();
        if(
$num>0)
        {
            echo 
"<h2 align= 'center'><font color='0000FF'>";
            echo 
"Danke für die Eingabe</h2><p>";
            echo 
"</font>";
        }
        else
        {
            echo 
"<h2 align= 'center'><font color='#ff0000'>";
            echo 
"Es ist ein Fehler aufgetreten</h2><p>";
            echo 
"</font>";
        }
    }


$db = new dbzugriff;

$res result("
                select *
                from vertrag
                ORDER BY raum
"
);



$db->init($res);



echo 
"
    <html>
    <body>
        <link rel='stylesheet' type='text/css' href='anmeldung.css'>
        
        <p><div id='schrift'><h1 align='center'>Mietvertrag</h1></p>
        
        <div id='zentrieren'>
        <form action='mietvertrag.php' method='post'>
            
            <table>
                <tr>
                    <td></td>
                    <td><font size='5'>Mieter:</td>
                    <td><input name='mieter'>
                </tr>
                <tr>
                    <td></td>
                    <td></td>
                    <td></td>
                </tr>
                <tr>
                    <td></td>
                    <td><font size='5'>Einheit:</td>
                    <td>
"
;

 
echo 
"
    <select name='raum'>
"
;



for (
$i=1$i<=$db->num$i++){
    
$db->readrow();
  
  
  
echo 
"
    <option style='font-size:20px;' value=$db->id $selected->$db->raum</option>
"
;
}

echo 

    </select><p>
"
;


 echo 
"                   
                    </td>
                </tr>
                <tr>
                    <td></td>
                    <td></td>
                    <td><a href='einheit.php'>hinzuf&uuml;gen</td>
                </tr>
                <tr>
                    <td></td>
                    <td><font size='5'>Kaltmiete:</td>
                    <td><input name='kaltmiete'></td>
                </tr>
                <tr>
                    <td></td>
                    <td><font size='5'>Nebenkosten:</td>
                    <td><input name='nebenkosten'></td>
                </tr>
                <tr>
                    <td></td><td></td><td></td>
                </tr>
                <tr>
                    <td></td><td></td>
                    <td><input type='submit' name='gesendet'></td>
                </tr>
            </table>
        </form>
        </div>
    
    </body>
    </html>
"
;

?>

[MOD: Lesemodus ein]

Geändert von nikosch (22.06.2010 um 17:07 Uhr).
php_1975 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 22.06.2010, 13:10  
Erfahrener Benutzer
 
Benutzerbild von wolf29
 
Registriert seit: 17.03.2010
Beiträge: 1.670
PHP-Kenntnisse:
Fortgeschritten
wolf29 wird schon bald berühmt werdenwolf29 wird schon bald berühmt werden
Standard

Könntest Du bitte die PHP Tags hier im WYSIWYG Editor nutzen, damit dein Code leichter lesbar ist? Danke.

Wolf29
__________________
while (!asleep()) sheep++;

Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.
wolf29 ist gerade online  
Alt 22.06.2010, 13:16  
Erfahrener Benutzer
 
Registriert seit: 15.04.2010
Beiträge: 813
PHP-Kenntnisse:
Fortgeschritten
Paul.Schramenko befindet sich auf einem aufstrebenden Ast
Standard

1. siehe vorpost, der Code ist echt beschissen zum lesen
2. mach das error_reporting an und zeige die Fehlermeldungen bitte!
3. Das ist definitiv falsch
PHP-Code:
$sqlab"insert vertrag"
das müsste
PHP-Code:
$sqlab"insert INTO vertrag"
heißen

Für den Rest hab ich ohne BB-Tags keine Lust mehr...
__________________
"My software never has bugs, it just develops random features."
"Real programmers don't comment. If it was hard to write, it should be hard to understand!"
Positive Bewertungen sind nicht unwillkommen...
Paul.Schramenko ist offline  
Alt 22.06.2010, 13:18  
Neuer Benutzer
 
Registriert seit: 22.06.2010
Beiträge: 19
PHP-Kenntnisse:
Anfänger
php_1975 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

[MOD: Verschoben nach oben]

Geändert von nikosch (22.06.2010 um 17:06 Uhr).
php_1975 ist offline  
Alt 22.06.2010, 13:22  
Erfahrener Benutzer
 
Benutzerbild von wolf29
 
Registriert seit: 17.03.2010
Beiträge: 1.670
PHP-Kenntnisse:
Fortgeschritten
wolf29 wird schon bald berühmt werdenwolf29 wird schon bald berühmt werden
Standard

So, schon besser. Erstmal (wie bereits erwähnt) stimmt dein INSERT Befehl nicht und du kannst deinen SQL Befehl (SELECT *...) doch einfach anpassen und statt * doch die Spaltennamen angeben, die Du ausgeben willst. So gibst Du alle Spalten aus (mit foreach).

Wolf29
__________________
while (!asleep()) sheep++;

Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.
wolf29 ist gerade online  
Alt 22.06.2010, 13:36  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.341
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

Vertrau keiner User-Eingabe:
PHP-Code:
$sqlab.= "'" $_POST["nebenkosten"] . "')";

// besser so:
$sqlab.= "'" mysql_real_escape_string($_POST["nebenkosten"]) . "')"
oder noch besser Prepared Statements
Arne Drews ist offline  
Alt 22.06.2010, 13:43  
Neuer Benutzer
 
Registriert seit: 22.06.2010
Beiträge: 19
PHP-Kenntnisse:
Anfänger
php_1975 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

erstmal danke.
jedoch glaub ich ihr habt mein problem nicht erkannt oder besser gesagt ich habs schlecht umschrieben

es funktioniert mit der eingabe und er übernimmt auch alles in die datenbank.
jedoch wenn ich erneut auf absenden drücke übernimmt er die "id" mit ins drop down menü.
somit hab ich meine ausgabe plus noch eine nummer(id), das will ich aber nicht.

schwierig zu erklären, wenn ichs zeigen könnte ist es jedem nach 10 sekunden klar was ich meine.
hehehe

@Paul.Schramenko
"insert INTO" hab ich jetzt geändert, ging aber auch ohne.
trotzdem danke!
richtig ist besser als falsch das läuft.

@wolf29
das mit "select *" hab ich nicht verstanden?


vera
php_1975 ist offline  
Alt 22.06.2010, 13:45  
Erfahrener Benutzer
 
Registriert seit: 05.02.2009
Beiträge: 1.356
PHP-Kenntnisse:
Fortgeschritten
Destruction ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von Arne Drews Beitrag anzeigen
Vertrau keiner User-Eingabe:
Prepared Statements
*hüstel* Dem kann ich nicht zustimmen
Von den ganzen Fragezeichen bekomm ich Alpträume
__________________
"Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]
Destruction ist offline  
Alt 22.06.2010, 13:47  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.341
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

Usereingaben bezog sich auf mysql_real_escape_string().
Wo kannst Du da nicht zustimmen?

Die prepared statements waren darauf bezogen, daß darin die maskierung für den db-zugriff automatisch erfolgt
und man auf mysql_real_escape_string() verzichten kann...
Arne Drews ist offline  
Alt 22.06.2010, 13:53  
Erfahrener Benutzer
 
Registriert seit: 05.02.2009
Beiträge: 1.356
PHP-Kenntnisse:
Fortgeschritten
Destruction ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich kann den Prepared Statements nicht zustimmen... bin kein Fan von denen VOn daher kann ich nicht zustimmen dass das "besser" ist.
__________________
"Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]
Destruction 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
Scriptsuche [Erledigt] Drop Down Menü mit Großstadtauswahl litterauspirna Scriptbörse 6 06.06.2010 18:02
[Erledigt] MySQL Link Resource in einer statischen Variablen speichern Lenki PHP-Fortgeschrittene 8 18.03.2010 16:37
Drop Down (Pulldown) mit array aus datenbank Demirci PHP Tipps 2010 7 07.03.2010 20:15
Menü sortieren - PHP - MySQL Kia PHP Tipps 2010 27 18.01.2010 13:12
Drag and Drop mit PHP und MySQL Torsten.E PHP Tipps 2009 16 08.07.2009 17:16
werte aus pull down menü an abfrage übergeben TRA PHP Tipps 2009 3 13.05.2009 10:03
[Erledigt] Levanzo.de - MySql down?! Off-Topic Diskussionen 17 14.03.2009 14:39
[Erledigt] MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Menü aus MySQL Datenbank ausgelesen PHP Tipps 2005 9 02.06.2005 17:11
[Erledigt] Mehrere Fragen zum drop down menu HTML, Usability und Barrierefreiheit 2 29.11.2004 23:59
[Erledigt] Mehrere Fragen zum drop down menu PHP Tipps 2004-2 1 28.11.2004 19:24
iFrames und Drop Down Menü stefan-miti HTML, Usability und Barrierefreiheit 4 17.10.2004 12:27
drop down menu Datenbanken 3 24.09.2004 16:39

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php dropdown mysql, php mysql dropdown, dropdown php mysql, http://www.php.de/php-einsteiger/69132-erledigt-drop-down-menue-mysql.html, dropdown mysql, mysql dropdown, dropdown aus mysql, php mysql dropdown auswahl, dropdown menü mysql, mysql php dropdown, drop down menu mysql, php mysql menu, dropdown mysql php, php mysql drop down, drop down mysql php, php mysql in dropdown, auswahlfeld php mysql, dropdown mit mysql, drop down php mysql, dropdown php sql

Alle Zeitangaben in WEZ +1. Es ist jetzt 09:09 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