SetaPDF
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 13.03.2005, 10:43   #1
TP-Junior
 
Registriert seit: Mar 2005
Ort: Österreich
Camod macht alles soweit korrekt

Kann mir wer weiterhelfen???


Hallo Leute,

ich bin absoluter Beginner in Sachen PHP, interessiere mich aber sehr dafür und hab auch schon so manches bewerkstelligt. Nun steh ich aber vor einem Problem und weiß nicht mehr weiter. Ich habe eine MySql Tabelle, in welcher Events gespeichert sind. Diese werden auf der Webseite angezeigt. Paralell dazu habe ich mir die selbe Tabelle noch mal ausgeben lassen, nur mit zwei zusätzlichen Funktionen - Daten löschen und Daten ändern.
Das Löschen der Daten hab ich schon hinbekommen, allerdings das Ändern nicht. Ich schaffe es, das die Daten mittels ID in einer neuen Seite schon in Formularfeldern ausgegeben werden, aber jetzt weiß ich nicht weiter wie ich das ändern machen.

Hier mal die Quelltexte meiner Bastelei:


Die erste Seite, wo die Daten ausgegeben werden:

PHP-Code:

<?
// Datenbankverbindung herstellen
$server "localhost";
$user   "****";
$pass   "****";
$dbase  "*****";


$conn = @mysql_connect($server$user$pass);

if(
$conn) {
   
mysql_select_db($dbase$conn);
} else {
   die(
"Fehler, Verbindung konnte nicht hergestellt werden!");
}
function 
getUser($suchfeld$page)
{    
    
$page = (int) $page;
   if (
$page <= 0$page=1;
    
    if(!empty(
$suchfeld)) {
        
$suchfeld trim($suchfeld);
        
$suchfeld str_replace(" ","%",$suchfeld);
        
$suchfeld "%".$suchfeld."%";
        
        
$sql "    SELECT
                        id, name, plz, ort
                    FROM
                        ev_fw
                    WHERE
                        name  LIKE '$suchfeld' OR
                        plz LIKE '$suchfeld' OR
                        ort LIKE '$suchfeld' OR
                        id LIKE '$suchfeld'"
;
    } else {
        
$sql " SELECT
                        id, name, plz, ort
                    FROM
                        ev_fw"
;
    }
    
    
$res mysql_query($sql);
    
$anz mysql_num_rows($res);
    
    
$itperpage 10;
       
$maxpages_int   = (int) ($anz/$itperpage);
    
$maxpages_float $anz/$itperpage;
       
    if ( 
$maxpages_float $maxpages_int ) {
        
$maxpages = (int)(($anz/$itperpage)+1);
    } else {
        
$maxpages = (int)(($anz/$itperpage));    
    }

    if (
$page $maxpages$page $maxpages;
    
    
$sql2 $sql." ORDER BY name ASC limit ".(($page-1)*$itperpage).",$itperpage";
    
$res2 mysql_query($sql2);
    
$anz2 mysql_num_rows($res2);
    
    if(
$anz 0) {
    
        if(empty(
$suchfeld)) {
        
            
$head "
                <table width='500' border='0' cellspacing='1' cellpadding='1'><tr>
                <td><strong>$anz Treffer in der Datenbank. Pro Seite werden $itperpage Veranstaltungen
                angezeigt.</strong></td></tr></table>"
;
    
        } else {

            if(
$anz 1) { $wortlaut "wurden"; } else { $wortlaut "wurde"; }
        
            
$head "
                <table width='500' border='0' cellspacing='1' cellpadding='1' ><tr>
                <td><strong>Mit Ihrer Suchabfrage $wortlaut $anz Treffer
                gelandet.</strong></td></tr></table>"
;
    
        }
        
        
$i               0;    // Eine Zählvariable für unterschiedliche Zeilenfarben
        
$navi_left       ""// HTML - Teil der Navigation zum zurückblättern
        
$navi_right      ""// HTML - Teil der Navigation zum weiterblättern
        
$userliste       ""// HTML - Inhalt der Userliste
        
$show_navi       ""// HTML – Beinhaltet die Navigation und das Suchfeld
        
        // Start der WHILE Schleife
        
while ($row mysql_fetch_array($res2MYSQL_ASSOC)) {
            
            
// Hier wird die Zeilenhintergrundfarbe für jeden Datensatz festgelegt,
            // dies dient der Übersicht            
            
if($i%2==0) { $trcolor "#ffffff"; } else { $trcolor "#FFFFCC"; }
            
            if (
$page 1){
                
$navi_left "<strong><input type=button value=\"&laquo;\"
                onClick=\"pageset($page-1)\" style=\"WIDTH:25px\"></strong>"
;
            }    
        
            if (
$page $maxpages){ 
                
$navi_right "<strong><input type=button value=\"&raquo;\"
                onClick=\"pageset($page+1)\" style=\"WIDTH:25px\"></strong>"
;
            }
            
            if(isset(
$_POST['suchfeld']) && !empty($_POST['suchfeld'])) {
                
$val_suchfeld $_POST['suchfeld'];
            } else {
                
$val_suchfeld "";
            }
            
            
$show_navi =
                
"
                    <form name='form1' method='post' action='index.php' style='margin:0px;padding:0px'>
                    <table width='500' border='0' cellspacing='1' cellpadding='1'>
                    <tr>
                    <td width='50%'>
                        <input type=button value=\"Seite\" style=\"WIDTH:50px\" onClick=\"pageset2()\">
                        <input name='page' type='text' id='page' value='$page' style=\"WIDTH:60px\">
                        von $maxpages $navi_left$navi_right
                    </td>
                    <td width='60%'><div align = 'right'>
                        Suchen: <input name='suchfeld' type='text' id='suchfeld' value = '$val_suchfeld'
                        style=\"WIDTH:120px;HEIGHT:20px\">
                        <input type=submit value=\"Finden\" style=\"WIDTH:45px\">
                        <input type=hidden name=page_no value=\"$page\">
                    </div></td>
                    </tr>
                    </table>
                    </form>
                "
;
                
                
$userliste $userliste .
                                        
"
                                        <tr bgcolor = '$trcolor'>
                                        <td width='30%'><div align='left'><b>$row[name]</b></div></td>
                                         <td width='10%'><div align='center'><b>$row[plz]</b></div></td>
                                         <td width='15%'><div align='center'><b>$row[ort]</b></div></td>
                                         <td width='20%'><div align='center'><b>$row[id]</b></div></td></tr>
                                        <tr>
                                        <td colspan='5' width='100%'><div align='right'><b>Auswahl: </b><a href='kill.php?id=$row[id]'><img src='b_drop.png' alt='L&ouml;schen' width='15' height='15' border='0'></a></div></td>
                                        <td colspan='5' width='100%'><div align='right'><a href='test02.php?id=$row[id]'><img src='b_edit.png' alt='Bearbeiten' width='15' height='15' border='0'></a></div></td>
                                        </tr>
                                        "
;
            
$i++; // Zählschleife um 1 erhöhen
        
}// WHILE Schleife abschließen
    
    
} else {
        
        
$userliste "
                        <tr>
                      <td colspan='5'><div align='center'>Keine Ergebnisse fuer Ihre Suche!<br><br>
                            <a href='index.php'>Zur&uuml;ck zur Eventliste</a></div>
                            </td>
                    </tr>"
;        
    }
    
    
$fertig "
                <table width='80%' border='0' cellspacing='1' cellpadding='1'>
             <tr bgcolor='#006699'>
                 <td width='30%'><div align='center'><strong>Name</strong></div></td>
                 <td width='10%'><div align='center'><strong>PLZ</strong></div></td>
                <td width='15%'><div align='center'><strong>Ort</strong></div></td>
                <td width='20%'><div align='center'><strong>ID</strong></div></td>
                </tr><tr height='15px' bgcolor='#000000'></tr>
             $userliste
                </table>
                "
;
    
    return 
$head.$show_navi.$fertig;
    
// Funktion schließen – FERTIG





?>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Translation//EN">
<html>
<head>
<TITLE>Blaetterfunktion mit Navigator und Suchfunktion</TITLE>
<script language="JavaScript" type="text/javascript">
function pageset(wert)
{
    document.form1.page_no.value = wert;
    document.form1.submit();        
}
function pageset2()
{
    document.form1.page_no.value = document.form1.page.value;
    document.form1.submit();        
}
</script>
</head>
<body>
<?
    
// Aufruf der Funktion getUser() mit Suchbegriff und Seitennummer
    
echo $show getUser($_POST['suchfeld'],$_POST['page_no']);
?>

Die zweite Seite, wo die Daten gelöscht werden:

PHP-Code:

<?php 
include_once("./admin_header.php");

$id $_GET['id']; 
$delete "DELETE FROM ev_fw WHERE id = $id"
echo 
"<p align='center'><b>"
if(
mysql_query($delete)) 

      echo 
'Eintrag wurde erfolgreich gel&ouml;scht!'
      
//session_destroy(); 

else 

      echo 
"Beim L&ouml;schen des Eintrags trat ein Fehler auf!"

echo 
"</b><br /><br /><a href='index.php'>Zur&uuml;ck zur Liste</a></p>"
?>
Und nun die Seite, wo die Daten geändert werden sollten:

PHP-Code:

<?
// Datenbankverbindung herstellen
$server "localhost";
$user   "*****";
$pass   "*****";
$dbase  "*****";


$conn = @mysql_connect($server$user$pass);

if(
$conn) {
   
mysql_select_db($dbase$conn);
} else {
   die(
"Fehler, Verbindung konnte nicht hergestellt werden!");
}
?>
<? 
$sql 
"SELECT * FROM ev_fw 
    WHERE id="
.$_REQUEST['id']; 

$result mysql_query($sql) or die(mysql_error()); 
$row mysql_fetch_assoc($result); 
?> 

<p> 
ID: <?= $_GET['id']; ?> 
</p> 

<form action="eintragen.php" method="post"> 
    <input type="hidden" name="id" value="<?=$_GET['id']?>"> 
    Name: <input type="text" name="name" value="<?=$row['name']?>"><br /> 
    PLZ: <input type="text" name="plz" value="<?=$row['plz']?>"><br /> 
    Ort: <input type="text" name="ort" value="<?=$row['ort']?>"><br /> 
    <br /> 
    <input type="submit" name="update" value="update"> 
</form>

Wie mach ich da weiter? Bin ich überhaupt am richtigen Weg? Kann mir wer ein Beispiel zeigen, wo ich das ablesen kann?
Camod ist offline   Mit Zitat antworten


Alt 13.03.2005, 12:09   #2
TP-Veteran
 
Benutzerbild von heatseeker
 
Registriert seit: Jun 2003
Ort: Aachen
heatseeker bringt sich richtig einheatseeker bringt sich richtig ein
statt
<?=$_GET['id']?>

<? echo $_GET['id']; ?>


funktioniert das?
heatseeker ist offline   Mit Zitat antworten
Alt 13.03.2005, 12:14   #3
TP-Junior
 
Registriert seit: Mar 2005
Ort: Österreich
Camod macht alles soweit korrekt
PHP-Code:
<?=$_GET['id']?>
Die richtige ID usw wird schon angezeigt, also die Daten aus der DB hab ich schon in den Formularfelder stehen, aber wie mach ich das jetzt, das wenn ich auf Update klicke die Daten in der DB dann übernommen und geändert werden?
Camod ist offline   Mit Zitat antworten
Alt 13.03.2005, 12:16   #4
TP-Veteran
 
Benutzerbild von heatseeker
 
Registriert seit: Jun 2003
Ort: Aachen
heatseeker bringt sich richtig einheatseeker bringt sich richtig ein
axo...^^

ließ dir mal die Syntac von UPDATE Befehlen in SQL durch.

dann solltest du es schaffen...
heatseeker ist offline   Mit Zitat antworten
Alt 13.03.2005, 12:20   #5
TP-Veteran
 
Benutzerbild von Dittboy
 
Registriert seit: Jan 2003
Ort: Goch
Dittboy hilft, wo's gehtDittboy hilft, wo's gehtDittboy hilft, wo's geht
Ich hab auch mal so ein kleines CMS gamacht. Vielleicht machst du es ja einfach so, dass wenn man auf den Sende-Button klickt, dasselbe passiert, als wenn man was neues speichert, mit dem unterscheid, dass er halt keine neue id etc. anlegt, sondern die id, die man editiert einfach überschreibt! Also ala "... where id = 3" oder so.

Ich hab das mit ner switch-abfrage gelöst. Ich sage der Seite was ich machen möchte (Save, edit, del, saveedit) und je nachdem führ der server dann halt eine andere aktion aus.

Mfg
Dittboy
__________________
muh!
Dittboy ist offline   Mit Zitat antworten
Alt 13.03.2005, 12:36   #6
TP-Junior
 
Registriert seit: Mar 2005
Ort: Österreich
Camod macht alles soweit korrekt
@Dittboy ich glaube das check ich noch weniger.....bin gerade an meinen Anfangsversuchen

@heatseeker

Ist das so in die Art richtig?

PHP-Code:
if($_POST['update']) 
{
mysql_query("UPDATE $ev_fw SET name = 'name', ort = 'ort', plz ='plz' WHERE id = 'id'");} 
Camod ist offline   Mit Zitat antworten
Alt 13.03.2005, 12:37   #7
TP-Veteran
 
Benutzerbild von heatseeker
 
Registriert seit: Jun 2003
Ort: Aachen
heatseeker bringt sich richtig einheatseeker bringt sich richtig ein
das ist vom syntax richtig. nur jetzt musst du die statischen werte durch deine variablen aus dem POST-array ersetzen.
heatseeker ist offline   Mit Zitat antworten
Alt 13.03.2005, 12:59   #8
TP-Junior
 
Registriert seit: Mar 2005
Ort: Österreich
Camod macht alles soweit korrekt
jetzt bin ich einen schritt weiter, allerdings schreibt er mir jetzt immer

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id= 'id' SET name='FF Schwechat - Blutspenden', plz='12', or' at line 1
Camod ist offline   Mit Zitat antworten
Alt 13.03.2005, 13:02   #9
TP-Veteran
 
Benutzerbild von heatseeker
 
Registriert seit: Jun 2003
Ort: Aachen
heatseeker bringt sich richtig einheatseeker bringt sich richtig ein
strings müssen in ' ' und zahlen nicht...

mysql_query("UPDATE $ev_fw SET name = 'name', ort = 'ort', plz =plz WHERE id = id");


ich denke das es so richtig ist. natürlich fehlen die variablen...
heatseeker ist offline   Mit Zitat antworten
Alt 13.03.2005, 13:07   #10
TP-Junior
 
Registriert seit: Mar 2005
Ort: Österreich
Camod macht alles soweit korrekt
Vielen Dank, es haut hin!!
Camod ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Kann mir wer weiterhelfen??? Kann mir wer weiterhelfen???
« Reg Expression | php frage »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
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


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:37 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44