Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „Formularupload zu MYSQL -nix passiert-“

Enra15

Noch nicht viel geschrieben

Hallo alle miteinander,

ich habe mal ein Formular erstellt gehabt. Bis vor kurzen hat auch alles wunderbar funktioniert. jetzt passiert nichts mehr sobald man auf den abschicken button drückt. Mein kumpel der sonst die ganzen PHP Sachen übernimmt hat sich auch lange nicht mehr gemeldet und ich weiß auch nicht wann der mal wiederkommt. Daher setze ich meine Hoffnung jetzt auf Euch ;-P

ich gehe davon aus dass der Fehler in der profile.php datei steckt.
doch kann ich dort nichts weiter erkennen...
THX

profile.php
PHP:
<?
// $USER and $HTML setup in index.php (ugly code i know ... quick and dirty)

require_once( 'database.php' );

$update = false; // new entry?
$id = 0;
$name = '';
$country = '';
$query = "SELECT id, real_name, country FROM profiles WHERE name = '".$USER."'";    
$result = mysql_query( $query, $DB ) OR die( mysql_error() );
if( $result ){
    $update = true;
    if( $row = mysql_fetch_array( $result ) ) {
        $id = $row['id'];
        $name = $row['real_name'];
        $country = $row['country'];
    }
}
else {
    die( mysql_error() );
}

if ( isset( $_POST['submit'] ) ) {
    // remove Slashes
    $_POST = get_magic_quotes_gpc() ? array_map( 'stripslashes', $_POST ) : $_POST;
    
    //get the fields from POST
    $name = mysql_real_escape_string( $_POST['real_name'] );
    $country = mysql_real_escape_string( $_POST['country'] );
    
    
    if ( $update ) {
        $sql = "UPDATE profiles SET 
            real_name = '$name', 
            country = '$country' 
            WHERE 
            name = '$USER'";
    }
    else {
        // The stuff what have to send to the DB
        $sql = "INSERT INTO profiles (name, real_name, country)
            VALUES( '$USER','$name','$country')";
    }
    
    if ( mysql_query( $sql, $DB ) ) {
        // success
        
        // update roles
        $sql = "DELETE FROM roles WHERE profile_id = '$id'";
        if( !mysql_query( $sql, $DB ) ){
            die( mysql_error() );
        }
        foreach( $_POST['roles'] as $role_id ){
            $sql = "INSERT INTO roles ( profile_id, role_id ) VALUES ( '$id', '$role_id' )";
            if( !mysql_query( $sql, $DB ) ){
                die( mysql_error() );
            }
        }
    
        $title = 'Success';
        $message = 'Profile updated!';
    }
    else {
        $title = 'Error';
        $message = 'Problem found updating profile!';
    }
    // load template
    $cnt = file_get_contents( 'html/cnt_message.html' );
    // replace template vars
    $cnt = str_replace( '%PICTURE%', '&nbsp;', $cnt );
    $cnt = str_replace( '%TITLE%', $title, $cnt );
    $cnt = str_replace( '%MESSAGE%', $message, $cnt );
    // add template to page
    $HTML .= $cnt;
}

$sql = "SELECT id, name FROM role";
$result = mysql_query( $sql, $DB );
if( !$result ){
    die( mysql_error() );
}

while( $row = mysql_fetch_array( $result ) ){
    $role_id = $row['id'];
    $role_name = $row['name'];
    
    $sql = "SELECT id FROM roles WHERE profile_id = '$id' AND role_id = '$role_id'";
    if( !mysql_query( $sql, $DB ) ){
        die( mysql_error() );
    }
    
    if( mysql_affected_rows( $DB ) == 1 ){
        $roles .= "<li>$role_name</li>";
        $upd_roles .= "<option value=\"$role_id\" selected=\"yes\">$role_name</option>";
    }
    else{
        $upd_roles .= "<option value=\"$role_id\">$role_name</option>";
    }
}

// load template
$cnt = file_get_contents( 'html/cnt_profile.html' );
// replace template vars
$cnt = str_replace( '%USER%', $USER, $cnt );
$cnt = str_replace( '%NAME%', $name, $cnt );
$cnt = str_replace( '%COUNTRY%', $country, $cnt );
$cnt = str_replace( '%ROLES%', $roles, $cnt );
$cnt = str_replace( '%UPD_ROLES%', $upd_roles, $cnt );
// add template to page
$HTML .= $cnt;

und das Formular
HTML:
<!-- cnt_profile -->
  <div style="text-align:center;">
        <table>
            <tr>
                <td colspan="7">
                        <form action="index.php?page=profile" method="POST">
                        <h2><u><div style="text-align:center;">Your current Profile</div></u></h2>
            </td></tr>
                        
                        <tr><td>
            <div style="text-align:right;"><span class="label">Name: </span></div></td>
            <td colspan="5"><span>%USER%</span>
            </td></tr>

                        <tr><td>
            <div style="text-align:right;"><span class="label">Real Name: </span></div></td>
            <td colspan="5"><input name="real_name" type="text" size="33" value="%NAME%"/>
            </td></tr>
            
            <tr><td rowspan="2">
            <div style="text-align:right;"><span class="label">Country: </span></div></td>
            <td><input type="radio" name="country" value="USA"/><img src="./bilder/flags/usa.jpg"/></td>
                        <td><input type="radio" name="country" value="Germany"/><img src="./bilder/flags/ger.jpg"/></td>
                        <td><input type="radio" name="country" value="UK"/><img src="./bilder/flags/uk.jpg"/></td>
                        <td><input type="radio" name="country" value="France"/><img src="./bilder/flags/f.jpg"/></td>
                        <td><input type="radio" name="country" value="Denmark"/><img src="./bilder/flags/dk.jpg"/></td>
                </tr>
            <tr>
            <td><input type="radio" name="country" value="Sweden"/><img src="./bilder/flags/s.jpg"/></td>
                        <td><input type="radio" name="country" value="Holland"/><img src="./bilder/flags/nl.jpg"/></td>
                        <td><input type="radio" name="country" value="Belgium"/><img src="./bilder/flags/b.jpg"/></td>
                        <td><input type="radio" name="country" value="Portugal"/><img src="./bilder/flags/p.jpg"/></td>
                        <td><input type="radio" name="country" value="Italy"/><img src="./bilder/flags/i.jpg"/></td>
                        </tr>
            <tr><td>
                        <div style="text-align:right;"><span class="label">Roles (use CTRL to select multiple): </span></div></td>
                        <td colspan="5">
                        <select multiple="yes" size="7" name="roles[]">%UPD_ROLES%</select></td></tr>
                        <tr><td colspan="7">
                        <div style="text-align:center;"><input type="submit" name="page" value="submit"/></div>
                    </form>
                </td>
            </tr>
        </table>
  </div>
 

sokie

Mod | Web

AW: Formularupload zu MYSQL -nix passiert-

if ( isset( $_POST['submit'] ) )
dein submit hat aber den namen ['page'] also kommt auch nur $_POST['page'] an, wenn ich das richtig gesehen habe.

Tabellenkonstruktionen machen code aber auch herrlich unübersichtlich.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
175.189
Beiträge
2.582.077
Mitglieder
67.259
Neuestes Mitglied
SaschMasch1312
Oben