zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden UPDATE SQL -> PHP funktioniert nicht

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 20.07.2010, 16:55
Benutzerbild von jnv
jnv jnv ist offline
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 07.07.2010
Beiträge: 152
jnv befindet sich auf einem aufstrebenden Ast
Pfeil UPDATE SQL -> PHP funktioniert nicht

Hallo kann mir vielleich jemand helfen. Ich bin mir fast sicher, dass nur wieder ein Komma oder sowas in der Art fehlt. Aber ich hänge nun seit gesterm Abend schon daran und er will das Update einfach nicht ausführen...

Also wenn ich das Formular abschicke löscht der den Inhalt der im Statement angegeben Felder.

Also firstname, lastname, login und email werden dann aus der Datenbank gelöscht

Hier der Code:

PHP-Code:
<?php
    session_start
();
    
?>
<?php
require_once ("admin_auth.php");
require_once (
"head.php");

 
?>

<body>

<?php include ("panel.php"); ?>
<div id="main">
    <div class="headlogo">

    </div>

<?php include ("topnavi.php"); ?>

<div class="content">

<p style="float: right;"> Derzeit sind {$user_ins} angemeldet!</p>

<p>
<br />
<?php
include ('config.php');
$con mysql_connect($dbhost$dbuser$dbpass);
mysql_select_db($dbase$con);


if (
$_POST["action"] == 'edit') {
mysql_query("UPDATE `members` SET
`firstname` = '"
.$_POST['firstname']."',
`lastname` = '"
.$_POST['lastname']."',
`login` = '"
.$_POST['login']."',
`email` = '"
.$_POST['email']."'
WHERE `member_id` = '"
.$_POST['member_id']."'");
}





$result mysql_query("SELECT * FROM `members`");
while (
$row mysql_fetch_array($result)) {

echo 
"<a href=\"user_mng_d.php?member_id=".$row['member_id']."\" onclick=\"return window.confirm('Wollen Sie diesen Datensatz wirklich l&ouml;schen?');\"><img src=\"images/delete.png\" border=\"0\" height=\"16\" width=\"16\" alt=\"\" /></a>";
echo 
'

<a href="?action=edit&member_id='
.$row['member_id'].'"><img src="images/icons/edit.gif" border="0" height="16" width="16" alt="" /></a> -
'
.$row['firstname'].'
'
.$row['lastname'].'
'
.$row['login'].'
'
.$row['email'].'
<br>'
;


}


echo 
'
<form action="'
.$_SERVER['PHP_SELF'].'" method="post">';

if (
$_GET["action"] == 'edit') {
echo 
'Bearbeiten '.$_GET['member_id'].':<br><br>';
echo 
'<input type="hidden" name="action" value="edit">';
echo 
'<input type="hidden" name="member_id" value="'.$_GET['member_id'].'">';
$result mysql_query("SELECT * FROM `members` WHERE `member_id` = '".$_GET['member_id']."'");
$row mysql_fetch_array($result);
$fname $row['firstname'];
$lname $row['lastname'];
$login_n $row['login'];
$email$row['email'];

} else {

?>
</div>
<div class="toggler" onclick="document.getElementById('aufzu').className=='auf' ? document.getElementById('aufzu').className='zu' : document.getElementById('aufzu').className='auf';"></div>
<div id="aufzu" class="zu">
<?php
echo '<input type="hidden" name="action" value="add">';
}

echo 
'&nbsp; Vorname:<input type="text" name="termin" value="'.$fname.'">';
echo 
'&nbsp; Nachname: <input type="text" name="ort" value="'.$lname.'">';
echo 
'&nbsp; Login: <input type="text" name="anliegen" value="'.$login_n.'">';
echo 
'&nbsp; eMail: <input type="text" name="ansprechpartner" value="'.$email.'"><br>';

echo 
'<input type="hidden" name="submit" value="true">';
echo 
'<center><input type="submit" value="edit"></center>';
echo 
'</form>';
echo 
'<a href="user_mng.php">abbrechen</a>';


mysql_close($con);
?>


</div>




</p>

<?php

include ("foot.php");


 
?>
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 20.07.2010, 17:21
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 18.06.2007
Ort: Verden
Beiträge: 405
chorn wird schon bald berühmt werden
Standard

Vorname:<input type="text" name="termin"


...


`firstname` = '".$_POST['firstname']."'
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 20.07.2010, 17:26
Benutzerbild von jnv
jnv jnv ist offline
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 07.07.2010
Beiträge: 152
jnv befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von chorn Beitrag anzeigen
Vorname:<input type="text" name="termin"


...


`firstname` = '".$_POST['firstname']."'


Danke
Mit Zitat antworten
  #4 (permalink)  
Alt 20.07.2010, 17:33
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 18.06.2007
Ort: Verden
Beiträge: 405
chorn wird schon bald berühmt werden
Standard

Mit print_r() debuggen hilft ungemein. Bei sowas wie

Code:
print_r($_POST)

...

array (
 termin => 'test'
 ort => 'fest'

...
kommst du sicher ganz schnell selbst ins stutzen.
Mit Zitat antworten
  #5 (permalink)  
Alt 20.07.2010, 17:52
Benutzerbild von fox
fox fox ist offline
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.09.2006
Beiträge: 1.011
fox sorgt für eine eindrucksvolle Atmosphärefox sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
PHP-Code:
mysql_query("UPDATE `members` SET
`firstname` = '"
.$_POST['firstname']."',
`lastname` = '"
.$_POST['lastname']."',
`login` = '"
.$_POST['login']."',
`email` = '"
.$_POST['email']."'
WHERE `member_id` = '"
.$_POST['member_id']."'"); 
*hust* SQL-Injection - Wikipedia !!!

Und weils so schön ist:

Zitat:
PHP-Code:
echo '

<a href="?action=edit&member_id='
.$row['member_id'].'"><img src="images/icons/edit.gif" border="0" height="16" width="16" alt="" /></a> -
'
.$row['firstname'].'
'
.$row['lastname'].'
'
.$row['login'].'
'
.$row['email'].'
<br>'

http://de.wikipedia.org/wiki/Cross-Site_Scripting

Aufpassen! htmlspecialchars und mysql_real_escape_string möchten deine Freunde werden.

Geändert von fox (20.07.2010 um 17:56 Uhr)
Mit Zitat antworten
  #6 (permalink)  
Alt 20.07.2010, 17:55
Benutzerbild von jnv
jnv jnv ist offline
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 07.07.2010
Beiträge: 152
jnv befindet sich auf einem aufstrebenden Ast
Standard

Und wie kann ich das verhindern? Hab dort so mit Überfliegen nichts gefunden
Mit Zitat antworten
  #7 (permalink)  
Alt 20.07.2010, 17:59
Benutzerbild von fox
fox fox ist offline
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.09.2006
Beiträge: 1.011
fox sorgt für eine eindrucksvolle Atmosphärefox sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von jnv Beitrag anzeigen
Und wie kann ich das verhindern? Hab dort so mit Überfliegen nichts gefunden
Wenn du mit "so überfliegen" Webseiten programmierst dann musst du davon ausgehen dass manch bösgesinnter die dir beim "so überfliegen" auseinandernimmt. Tipps hab ich außerdem schon gegeben. Und hier im Forum sowie bei Google gibts tausende von Themen dazu. Stichwörter s.o.


Weiterhin:
<form action="'.$_SERVER['PHP_SELF'].'" ...
Das ist wiederum eine mögliche Sicherheitslücke. Ein leeres action-Attribut (action="") hat per Definition die selbe Funktion, aber ohne Einfallstor.
Siehe dazu auch: http://forum.de.selfhtml.org/archiv/...31459/#m851670

Geändert von fox (20.07.2010 um 18:03 Uhr)
Mit Zitat antworten
  #8 (permalink)  
Alt 20.07.2010, 18:09
Benutzerbild von jnv
jnv jnv ist offline
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 07.07.2010
Beiträge: 152
jnv befindet sich auf einem aufstrebenden Ast
Standard

Ja Danke für die vielen Hinweise/Tips. Jedoch bin ich wie man sieht ein absoluter PHP/SQL Noob

Ich werde mich bei gegebener Zeit mal intensiv damit beschäftigen. Aber für mich ist erstmal wichtig das alles funktioniert.

Und online ist die Seite auch noch nicht (XAMPP).
Mit Zitat antworten
  #9 (permalink)  
Alt 20.07.2010, 18:13
Benutzerbild von fox
fox fox ist offline
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.09.2006
Beiträge: 1.011
fox sorgt für eine eindrucksvolle Atmosphärefox sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von jnv Beitrag anzeigen
Und online ist die Seite auch noch nicht (XAMPP).
Zum Glück.

Zitat:
Zitat von jnv Beitrag anzeigen
Aber für mich ist erstmal wichtig das alles funktioniert.
Das tut es nicht mehr, wenn schon alleine ein Benutzer von dir (Versehentlich) ein ' in seinem Namen hat. Schon hagelts Fehlermeldungen und du weißt nicht wo sie herkommen. Also lieber von Anfang an richtig gemacht als später ausgebessert. Oder willst du wie Apple mit seinem iPhone 4 dastehen?
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 20.07.2010, 18:15
Benutzerbild von jnv
jnv jnv ist offline
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 07.07.2010
Beiträge: 152
jnv befindet sich auf einem aufstrebenden Ast
Standard

Mhh hast wohl recht ja.

Ich werde mich heute Abend mal ransetzen und wenn ich was nicht verstehe kann ich dich ja fragen
Mit Zitat antworten
Sponsored Links
Antwort

Stichwörter
formular, php, sql, statement, update

Themen-Optionen
Ansicht

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.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
UPDATE funktioniert nicht mayhemtl Serveradministration und serverseitige Scripte 11 26.08.2007 17:00
dtd und css in php funktioniert im IE nicht!!! da-lick CSS 17 09.06.2007 16:44
id --> hover funktioniert nicht =( THePointer CSS 2 03.12.2006 00:12
Überall funktioniert nur im IE6 nicht -> Flyout Menü churchill CSS 3 16.11.2006 16:48


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