php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 16.07.2011, 18:22  
Neuer Benutzer
 
Registriert seit: 16.07.2011
Beiträge: 10
PHP-Kenntnisse:
Anfänger
trinity2253 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Wert aus Formular->Select in DB löschen

Hallo Leute,

ich habe ein Problem mit dem Löschen einer Zeile aus der Datenbank.
Über eine Combobox kann man die zuvor ausglesenen Daten auswählen, die man löschen möchte. Leider erfolgt nach Übergabe des Formular keine Löschaktion.
Ich bekomme einfach nicht die ID des Eintrags ausgegeben...

Wo liegt mein Fehler?

ciao
trinity2253

PHP-Code:
if (!isset($_POST['submit'])) {
    
$result dbquery("SELECT term_id, DATE_FORMAT (term_date,'%d.%m.%y') as term_date, TIME_FORMAT (term_time,'%H.%i') as term_time, term_event, term_location, DATE_FORMAT (term_addtime, '%d.%m.%y, %H.%i') as term_addtime, term_adduser, term_day, term_month, term_year FROM ".DB_TERMINE." ORDER BY ".DB_TERMINE.".term_year ASC, ".DB_TERMINE.".term_month ASC, ".DB_TERMINE.".term_day ASC,  ".DB_TERMINE.".term_time ASC");
    
$options "";
    while (
$row mysql_fetch_array($result)) {
        
$options .= "<option>".$row['term_id'].", ".$row['term_date'].", ".$row['term_time'].", ".$row['term_event'].", ".$row['term_location']."</option>\n";
    }
    echo 
"<form name='submit_form' method='post' action='".FUSION_SELF."'>\n";
    echo 
"<table cellpadding='0' cellspacing='0' class='center'><br />\n<tr>\n";
    echo 
"<br /><td class='tbl'>W&auml;hle den Termin aus, den Du l&ouml;schen willst.</td></tr><tr>\n";
    echo 
"<td class='tbl'><select type='option' name='terms' class='textbox' style='width:400px;' />";
    echo 
$options;
    echo 
"</select></td>\n";
    echo 
"</tr>\n<tr>\n";
    echo 
"<td align='center' colspan='2' class='tbl'><br />\n";
    echo 
"<input type='submit' name='submit' value='Senden' class='button' />\n</td>\n";
    echo 
"</tr>\n</table>\n</form>\n";
} else {
    
$result "DELETE FROM ".DB_TERMINE." WHERE term_id = ".$_POST['terms'];


Geändert von trinity2253 (16.07.2011 um 20:04 Uhr).
trinity2253 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 16.07.2011, 18:51  
Benutzer
 
Registriert seit: 29.05.2011
Beiträge: 58
PHP-Kenntnisse:
Fortgeschritten
seb_ befindet sich auf einem aufstrebenden Ast
Standard

Wie auch!

1. Schau dir mal dein Beitrag an und achte mal auf das Syntax-Highlighting.
2. Schonmal etwas von value="" gehört ?
3. Bart Simpson möge mit dir sein:
Zitat:
Ich muss mein Quellcode vor SQL-Injection schützen.
Ich muss mein Quellcode vor SQL-Injection schützen.
Ich muss mein Quellcode vor SQL-Injection schützen.
Ich muss mein Quellcode vor SQL-Injection ...
__________________
Lesen gefährdet Ihre Dummheit!
seb_ ist offline   Mit Zitat antworten
Alt 16.07.2011, 20:04  
Neuer Benutzer
 
Registriert seit: 16.07.2011
Beiträge: 10
PHP-Kenntnisse:
Anfänger
trinity2253 befindet sich auf einem aufstrebenden Ast
Standard

Hmm...
Ich weiß momentan nicht genau was Du meinst.
Value ist schon klar, aber wo soll das hin?

Ein $_POST['terms'] schmeißt mir den ganzen String raus... Die Frage ist jetzt, wie ich die ID heraus bekomme...

trinity2253
trinity2253 ist offline   Mit Zitat antworten
Alt 16.07.2011, 20:34  
Benutzer
 
Registriert seit: 29.05.2011
Beiträge: 58
PHP-Kenntnisse:
Fortgeschritten
seb_ befindet sich auf einem aufstrebenden Ast
Standard

Hier: SelfHTML => Option => value="".
Sollte dies dir auch nicht weiterhelfen, so geht es für dich erstmal in die Abteilung Grundlagen (Lerne Grundlagen | Quellensammlung).

MfG
__________________
Lesen gefährdet Ihre Dummheit!
seb_ ist offline   Mit Zitat antworten
Alt 17.07.2011, 12:36  
Neuer Benutzer
 
Registriert seit: 16.07.2011
Beiträge: 10
PHP-Kenntnisse:
Anfänger
trinity2253 befindet sich auf einem aufstrebenden Ast
Standard

Das ist mir schon klar...
Ich habe auch schon damit gearbeitet. Wie auch mit EventHandlern... Leider ergabt das auch keinen Erfolg.
Das ist eine Variante von vorher... Leider wird der Wert nicht an die Variable "id" übergeben... Die "alert"-Funktion klappt...

PHP-Code:
echo "<script type='text/javascript'>";
    echo 
"function SetValue() {";
        
// echo "alert(document.submit_form.term.options[document.submit_form.term.selectedIndex].value)";
        
echo "var id = document.submit_form.term.options[document.submit_form.term.selectedIndex].value";
    echo 
"}";
echo 
"</script>";

if (!isset(
$_POST['submit'])) {
    
$result dbquery("SELECT term_id, DATE_FORMAT (term_date,'%d.%m.%y') as term_date, TIME_FORMAT (term_time,'%H.%i') as term_time, term_event, term_location, DATE_FORMAT (term_addtime, '%d.%m.%y, %H.%i') as term_addtime, term_adduser, term_day, term_month, term_year FROM ".DB_TERMINE." ORDER BY ".DB_TERMINE.".term_year ASC, ".DB_TERMINE.".term_month ASC, ".DB_TERMINE.".term_day ASC,  ".DB_TERMINE.".term_time ASC");
    
$options "";
    while (
$row mysql_fetch_array($result)) {
        
$options .= "<option value=".$row['term_id'].">".$row['term_date'].", ".$row['term_time'].", ".$row['term_event'].", ".$row['term_location']."</option>\n";
    }
    echo 
"<form name='submit_form' method='post' action='".FUSION_SELF."' onsubmit='SetValue()'>\n";
    echo 
"<table cellpadding='0' cellspacing='0' class='center'><br />\n<tr>\n";
    echo 
"<br /><td class='tbl'>W&auml;hle den Termin aus, den Du l&ouml;schen willst.</td></tr><tr>\n";
    echo 
"<td class='tbl'><select type='option' name='term' class='textbox' style='width:400px;' />";
    echo 
$options;
    echo 
"</select></td>\n";
    echo 
"</tr>\n<tr>\n";
    echo 
"<td align='center' colspan='2' class='tbl'><br />\n";
    echo 
"<input type='submit' name='submit' value='Senden' class='button' />\n</td>\n";
    echo 
"</tr>\n</table>\n</form>\n";
} else {
    
// $result = "DELETE FROM ".DB_TERMINE." WHERE term_id = ".$row['term_id'];

trinity2253 ist offline   Mit Zitat antworten
Alt 17.07.2011, 12:39  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von trinity2253 Beitrag anzeigen
Leider wird der Wert nicht an die Variable "id" übergeben...
Doch, wird er - pack ein alert(id) dahinter, wenn du es nicht glaubst.

Allerdings weiß ich nicht, was du mit diesem JavaScript-Schnippsel jetzt überhaupt bezwecken willst - ich dachte, das löschen eine Datensatzes in PHP ist dein Problem ...?

Bitte beschreibe jetzt mal nachvollziehbar, wo genau dein Problem eigentlich liegt.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 17.07.2011, 12:47  
Neuer Benutzer
 
Registriert seit: 16.07.2011
Beiträge: 10
PHP-Kenntnisse:
Anfänger
trinity2253 befindet sich auf einem aufstrebenden Ast
Standard

Komisch, bei mir wird die Variable mit alert(id) nicht ausgegeben...
Ich hätte mir die Variable dann schon geholt und unten in den SQL-Syntax verarbeitet.
trinity2253 ist offline   Mit Zitat antworten
Alt 17.07.2011, 12:49  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von trinity2253 Beitrag anzeigen
Komisch, bei mir wird die Variable mit alert(id) nicht ausgegeben...
Dann hast du das alert nicht direkt hinter der Zeile, in der du die Variable deklarierst, platziert.
(Dass es mit innerhalb der Funktion stehen muss, sollte klar sein - schließlich die die Variable nur lokal in dieser verfügbar.)

Und warum du dafür überhaupt JavaScript einsetzen willst, wird auch immer noch nicht deutlich.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 17.07.2011, 12:51  
Neuer Benutzer
 
Registriert seit: 16.07.2011
Beiträge: 10
PHP-Kenntnisse:
Anfänger
trinity2253 befindet sich auf einem aufstrebenden Ast
Standard

So habe ich das gehabt... Leider kommt dann kein Alert-Fenster...

PHP-Code:
echo "<script type='text/javascript'>";
    echo 
"function SetValue() {";
        
// echo "alert(document.submit_form.term.options[document.submit_form.term.selectedIndex].value)";
        
echo "var id = document.submit_form.term.options[document.submit_form.term.selectedIndex].value";
        echo 
"alert(id)";
    echo 
"}";
echo 
"</script>"
trinity2253 ist offline   Mit Zitat antworten
Alt 17.07.2011, 12:57  
Neuer Benutzer
 
Registriert seit: 16.07.2011
Beiträge: 10
PHP-Kenntnisse:
Anfänger
trinity2253 befindet sich auf einem aufstrebenden Ast
Standard

Ich bekomme die Zeile in der DB nicht gelöscht...
Deshalb war ich auf dem Trip, die "term_id" als Value zu übergeben und dann in eine Variable zu packen.
Irgendwie sehe ich momentan den Wald vor lauter Bäumen nicht.
Hatte vor ein paar Jahren mal ein ähnliches Script geschrieben, was auch funktionierte...

PHP-Code:
<?
            $page
=$_GET["page"];
            
$submit=$_GET["submit"];
            
$id2=$_GET["id2"];
            if(
$page=="del") {
                if(!
$submit) {
                    
?>
                    <br>
                    <form action="member.php?page=index" method="get">
                    <select name="id2" class="button">
                    <option value="" SELECTED>Bitte wählen Sie...</option>
                    <option value="">------------------</option>
                    <?PHP
                    
include("config.inc.php");
                    
$result mysql_query("select * from termine");
                    while (
$row mysql_fetch_object($result)) {
                    
                      echo 
"<option value=".$row->id.">".$row->dy."-".$row->mth."-".$row->yr." ".$row->ort."</option>";
                    }

                    
?>
                    
                    </select>
                    <input type="hidden" name="page" value="del">
                    <input type="submit" class="button" name="submit" value="Löschen">
                    </form>
                                        
                    <?
                
}
                else {
                    
                    if (
$id2 and $submit) {
                        include(
"config.inc.php");
                        
$query="delete from termine where id = $id2;";
                        
$abfrage=mysql_query($query);
                        if(
$abfrage) { echo "<br><br><span class=\"comment\">Änderungen wurden erfolgreich übernommen!</span>"; }
                        
                        else { echo 
"<br><br><span class=\"comment\">Änderungen konnten nicht übernommen werden.</span>"; }
                    }
                    else {
                        echo 
"<br><br><span class=\"comment\">Sie ließen Felder unausgefüllt.<br><br><a href=\"javascript:history.back()\">Zurück</span></a>";
                    }
                }
            } 
            else {
                echo 
"<a href=\"member.php?page=index\">Hier geht's weiter !!</a>";
            }
?>
Wie gesagt... Früher... Der Code ist nicht sauber programmiert...

trinity2253
trinity2253 ist offline   Mit Zitat antworten
Antwort


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
Gruppenmitglieder zählen choice Datenbanken 2 07.12.2010 19:58
[Erledigt] php tabelle - probleme (spaltennamen) dior PHP Tipps 2010 5 11.11.2010 11:59
PHP: Formular Generator Zergling-new Tutorials 16 06.07.2010 03:14
Formular im Formular mistermint JavaScript, Ajax und mehr 11 21.06.2010 22:29
[Erledigt] PHP formular mit berechnung und export in Excel und dateianhang AlexHPService Gewerblich 0 25.03.2010 13:10
Ändern oder Löschen aus einem Formular Maggus PHP Tipps 2009 3 14.11.2009 15:40
[Erledigt] Datensätze löschen nach Auswahl aus Formular (checkboxen) asyoulikeit Datenbanken 3 13.06.2008 15:56
Wert aus Textfeld in neues Formular übernehmen (kein Submit) PsychoEagle HTML, Usability und Barrierefreiheit 9 02.01.2007 14:51
Mit Häkchen im Formular Variable wieder löschen TomH27 PHP Tipps 2006 11 28.09.2006 12:43
nach grösstem (unbekannten) Wert suchen lindner Datenbanken 2 20.08.2006 22:13
Keys aus Array löschen die keinen Wert beinhalten? PHP Tipps 2006 7 06.04.2006 16:07
Formular Felder nach Erfolg löschen PHP Tipps 2005 24 05.04.2005 16:56
[Erledigt] Sicherheitsabfrage beim Löschen aus DB PHP Tipps 2005 6 05.04.2005 10:24
Frage zu einem Formular. Zero.exe PHP Tipps 2005 6 17.03.2005 22:01
Formular nach ENTer eingabe Felder löschen themonk HTML, Usability und Barrierefreiheit 12 18.09.2004 22:53

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
select bitte wählen option löschen, wert aus formular löschen php, wert eines terms der form n

Alle Zeitangaben in WEZ +2. Es ist jetzt 12:59 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