php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 24.07.2011, 03:16  
Neuer Benutzer
 
Registriert seit: 24.07.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Sushi1987 zeigte ein beschämendes Verhalten in der Vergangenheit
Standard Frage wegen Mysql abfrage

Hallo liebe Community

Ich habe leider ein kleines Problem, entweder hab ich nicht richtig gesucht oder es ist doch etwas komplizierter als ich es mir dachte.

Uuuund zwar, habe eine PHP Daten, die auf meine Datenbank zugreift und mir diese Werte per PHP Tabelle einfügt bzw ausliest. Soweit sogut. Habe jetzt diesen Code bei der Tabelle erstellung:

PHP-Code:
while ($acc mysql_fetch_array($account_query
Codes fürs generieren vorher:

PHP-Code:
$sql "SELECT id, name, klasse, level, sekklasse, seklevel, hdu, zf, df FROM account";

     

    
$account_query mysql_query($sql) or die("Anfrage nicht erfolgreich");

     

    
$anzahl mysql_num_rows($account_query);

    echo 
"Anzahl der Datensätze: $anzahl"
Zu meinem Problem:

Ich möchte das er bei

PHP-Code:
while ($acc mysql_fetch_array($account_query
die Spalte->"Klasse" den Wert->"Ritter" nur ausgibt. Jeder andere der dort etwas anderes stehen hat, soll somit in einer anderen Tabellen eingefügt werden.

Hoffe Ihr versteht mein Problem Weiß nicht mehr richtig weiter leider...

Würde mich über Feedback/Hilfestellungen freuen
Sushi1987 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 24.07.2011, 04:04  
Neuer Benutzer
 
Registriert seit: 24.07.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Sushi1987 zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

*peinlich*

PHP-Code:
$ritt "SELECT id, name, klasse, level, sekklasse, seklevel, hdu, zf, df FROM account  WHERE klasse = 'Ritter'";
    
$account_ritter mysql_query($ritt) or die("Anfrage nicht erfolgreich");

    
$schurk "SELECT id, name, klasse, level, sekklasse, seklevel, hdu, zf, df FROM account  WHERE klasse = 'Schurke'";
    
$account_schurke mysql_query($schurk) or die("Anfrage nicht erfolgreich"); 
So geht es zwar gerade, aber ist dies der richtige Weg oder würde es einfacher gehen?

Jetzt hätte ich noch eine Frage, wie wäre es den möglich, über eine andere Seite (sozusagen verwaltung.php Seite) sich diese komplette Tabelle anzeigen zulassen (von jedem dort eingetragenem) um diese per PHP zu verändern und jemanden neues Einzutragen?

Hoffe habe es richtig erklärt
Sushi1987 ist offline   Mit Zitat antworten
Alt 24.07.2011, 19:01  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard

Indem du ein Formular zur Bearbeitung erstellt, Daten aus der Datenbank lädst und im Formular anzeigst und eine Möglichkeit zu speichern einbaust.

"Wie geht das?" Fragen kann man nicht anders beantworten..
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Alt 24.07.2011, 20:19  
Neuer Benutzer
 
Registriert seit: 24.07.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Sushi1987 zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Joa klar verstehe, soll mir ja auch niemand etwas basteln, da ich es ja selber machen möchte und dabei lernen will

Also, habe jetzt mal etwas gebaut (für den Profi sicherlich Augenkrebs, aber mir hilft es ):

PHP-Code:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="formular" id="formular">
    <table cellpadding="1" cellspacing="3" border="1" width="75%">
        <tr><th align="center" colspan="8">ALLE</th></tr>
        <tr>
            <td>Klasse</td>
            <td>Name</td>
            <td>Haupt-Level</td>
            <td>Sekundaer-Klasse</td>
            <td>Sekundaer-Level</td>
            <td>HdU</td>
            <td>ZF</td>
            <td>DF</td>
        </tr>
<?php while ($testing mysql_fetch_array($account_testing) ){ ?>
         <tr>
            <td><input type="text" name="klasse" value="<?=$testing['klasse']?>" maxlength="100" /></td>
            <td><input type="text" name="name" value="<?=$testing['name']?>" maxlength="100" /></td>
            <td><input type="text" name="level" value="<?=$testing['level']?>" maxlength="100" /></td>
            <td><input type="text" name="sekklasse" value="<?=$testing['sekklasse']?>" maxlength="100" /></td>
            <td><input type="text" name="seklevel" value="<?=$testing['seklevel']?>" maxlength="100" /></td>
            <td><input type="text" name="hdu" value="<?=$testing['hdu']?>" maxlength="100" /></td>
            <td><input type="text" name="zf" value="<?=$testing['zf']?>" maxlength="100" /></td>
            <td><input type="text" name="df" value="<?=$testing['df']?>" maxlength="100" /></td>
        </tr>
<?php ?>
        <tr><th align="center" colspan="8"><input type="submit" name="submitbutton" id="submitbutton" value="Senden" /></th></tr>
</table>
</form>
Dieser Text gibt mir die Datenbank Einträge von 3 Personen aus, soweit korrekt und ohne Probleme.

Da ich aber, oberhalb dieses eingebaut habe:

PHP-Code:
    if (isset( $_POST['submitbutton'] ))
{
    echo 
"<pre>" .print_r$_POSTtrue ). "</pre>";

damit ich sehe was er überhaupt macht, bin ich zu dem Entschluss gekommen, das er nur den letzten Eintrag "weiterleitet".

Beispiel:

Ich bearbeite Person 1, diese werden nicht beachtet, sowie auch bei Person 2, nur Person 3 wird ständig weitergeleitet obwohl ich aber Person 1 und 2 bearbeite.

Für hilfestellungen bin ich dankbar
Sushi1987 ist offline   Mit Zitat antworten
Alt 24.07.2011, 21:53  
Neuer Benutzer
 
Registriert seit: 24.07.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Sushi1987 zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Das es vielleicht für manche etwas Verständlicher ist -> KLICK MICH!

Daran seht ihr, was ich damit für ein Problem habe..
Sushi1987 ist offline   Mit Zitat antworten
Alt 24.07.2011, 21:56  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Sortierung un Gruppenbruch wäre eine Variante. http://php.de/wiki-php/index.php/Gru...rdverfahren%29

Bevor Du nach einem Schnipsel fragst, probier es bitte selbst.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 25.07.2011, 06:39  
Neuer Benutzer
 
Registriert seit: 24.07.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Sushi1987 zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Hi

Tut mir leid aber so Richtig verstehe ich das jetzt nicht. Kann mir vorstellen das so eine Gruppierung für meinen Fall vorgesehen ist, aber den Ablauf verstehe ich nicht, und den Artikel wenn ich ehrlich bin.

Auf deutsch muss dem Code ja mitgeteilt werden (was die Gruppierung denk ich mal machen soll) das er Versteht welchen er ändert bzw das er nicht nur den letzten ändert?

Weil das er was macht sieht man ja an der array, aber egal was, er nimmt nur den letzten... hm..


Aber soweit erstmal danke, das sich welche bereit Erklären mir zu helfen
Sushi1987 ist offline   Mit Zitat antworten
Alt 25.07.2011, 07:10  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

Dein Problem mit diesem Formular ist: Durch die Schleife hast du jeweils mehrere Inputs mit name="klasse" etc., da die Parameter aber nur jeweils einen Wert annehmen können, wird der letzte benutzt. Du hast nun zwei Möglichkeiten:
1. für jeden Charakter ein eigenes Formular mit eigenem Submit-Button (also innerhalb der Schleife)
2. du benennst die inputs dynamisch um, das geht auch in Form eines Arrays: name="klasse[0]", name="klasse[1]", ...
fab ist offline   Mit Zitat antworten
Alt 25.07.2011, 17:10  
Neuer Benutzer
 
Registriert seit: 24.07.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Sushi1987 zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Zitat:
Zitat von fab Beitrag anzeigen
Dein Problem mit diesem Formular ist: Durch die Schleife hast du jeweils mehrere Inputs mit name="klasse" etc., da die Parameter aber nur jeweils einen Wert annehmen können, wird der letzte benutzt. Du hast nun zwei Möglichkeiten:
1. für jeden Charakter ein eigenes Formular mit eigenem Submit-Button (also innerhalb der Schleife)
2. du benennst die inputs dynamisch um, das geht auch in Form eines Arrays: name="klasse[0]", name="klasse[1]", ...

Vielen Dank, das ist genau das was ich wollte bzw so wie ich es verstehe 1A!

Habe es jetzt so gemacht:

PHP-Code:
<?php while ($testing mysql_fetch_array($account_testing) ){ ?>
         <tr>
            <td><?=$testing['id']?></td>
            <td><input type="text" name="klasse[]" value="<?=$testing['klasse']?>" maxlength="100" /></td>
            <td><input type="text" name="name[]" value="<?=$testing['name']?>" maxlength="100" /></td>
            <td><input type="text" name="level[]" value="<?=$testing['level']?>" maxlength="100" /></td>
            <td><input type="text" name="sekklasse[]" value="<?=$testing['sekklasse']?>" maxlength="100" /></td>
            <td><input type="text" name="seklevel[]" value="<?=$testing['seklevel']?>" maxlength="100" /></td>
            <td><input type="text" name="hdu[]" value="<?=$testing['hdu']?>" maxlength="100" /></td>
            <td><input type="text" name="zf[]" value="<?=$testing['zf']?>" maxlength="100" /></td>
            <td><input type="text" name="df[]" value="<?=$testing['df']?>" maxlength="100" /></td>
        </tr>
<?php ?>
        <tr><th align="center" colspan="9"><input type="submit" name="submitbutton" id="<?=$testing['id']?>" value="Senden" /></th></tr>
und wenn man mal testet auf diesem Link sieht man das er, egal was es ist, genau Auflistet und auch die Werte genau übernimmt.

Weiß jetzt nur nicht ob es genau das war bzw ob es auch soweit okay ist?

Eigentlich müsste man jetzt nur noch das mysql schreiben, wo er dann durch das Klicken es auch tatsächlich ändert oder?


Wie gesagt kann mich nur bedanken, 1a Hilfestellung
Sushi1987 ist offline   Mit Zitat antworten
Alt 03.08.2011, 03:46  
Neuer Benutzer
 
Registriert seit: 24.07.2011
Beiträge: 8
PHP-Kenntnisse:
Anfänger
Sushi1987 zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Hallo ich bin es nochmal


Kurze Frage, hat nicht jemand der es echt drauf hat in Sache PHP/Mysql kurz Zeit und Lust mir da etwas zuschreiben bzw mir dort etwas "stärker" unter die Arme zugreifen? Ich weiß, nur durch selber Versuchen wird man besser bzw Lernt man es, aber ich verzweifel einfach nur noch

Habe jetzt per:

PHP-Code:
if (isset( $_POST['submitbutton'] )){


$update "UPDATE account SET klasse = '".$_POST['klasse']."'";

$result mysql_query($update);
echo 
"Datensatz erfolgreich aktualisiert!<br><br>";

Schonmal das Update hinbekommen (halt erstmal nur die "klasse") Aber das Formular selber, verhaut er mir alles, wenn er mal etwas Updatet:

PHP-Code:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="formular" id="formular">
    <table cellpadding="1" cellspacing="3" border="1" width="75%">
        <tr><th align="center" colspan="9">ALLE</th></tr>
        <tr>
            <td>Datenbank ID</td>
            <td>Klasse</td>
            <td>Name</td>
            <td>Haupt-Level</td>
            <td>Sekundaer-Klasse</td>
            <td>Sekundaer-Level</td>
            <td>HdU</td>
            <td>ZF</td>
            <td>DF</td>
        </tr>
<?php while ($testing mysql_fetch_array($account_testing) ){ ?>
         <tr>
            <td><?=$testing['id']?></td>
            <td><input type="text" name="klasse[]" value="<?=$testing['klasse']?>"/></td>
            <td><input type="text" name="name[]" value="<?=$testing['name']?>"/></td>
            <td><input type="text" name="level[]" value="<?=$testing['level']?>"/></td>
            <td><input type="text" name="sekklasse[]" value="<?=$testing['sekklasse']?>"/></td>
            <td><input type="text" name="seklevel[]" value="<?=$testing['seklevel']?>"/></td>
            <td><input type="text" name="hdu[]" value="<?=$testing['hdu']?>"/></td>
            <td><input type="text" name="zf[]" value="<?=$testing['zf']?>"/></td>
            <td><input type="text" name="df[]" value="<?=$testing['df']?>"/></td>
        </tr>
<?php ?>
        <tr><th align="center" colspan="9"><input type="submit" name="submitbutton" id="submitbutton" value="Senden" /></th></tr>

</table>
</form>

Ich weiß wirklich nicht mehr weiter, wie ich es hinbekomme,

a) das er jede Person/User einzeln updatet
b) mir auch das richtige Updatet

Er listet mir alles schön auf, keine Frage, aber bei der Übertragung crasht alles (für den Profi sicherlich etwas zum kaputt lachen )

Daher wäre jemand so lieb und freundlich dort mal etwas drüber zuschauen oder mir es i-wie Verständlich zumachen?

Wäre echt hammer Lieb, weiß nicht mehr weiter
Sushi1987 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
[Erledigt] MySQL Abfrage mit mehreren Keywörtern inox PHP Einsteiger 16 15.02.2011 18:18
MYSQL Abfrage von 4 Datenbanken da_mike PHP Einsteiger 47 08.02.2011 15:02
SQL Abfrage Fehler nach Umstieg von MySQL4 auf MySQL 5 chefmaik PHP Tipps 2010 5 05.08.2010 16:02
[Erledigt] MySQL Abfrage splifter PHP Tipps 2010 25 06.07.2010 12:15
PDO MySQL abfrage funktioniert nicht Bloodydead PHP Tipps 2010 8 18.06.2010 11:08
[Erledigt] MySQL Link Resource in einer statischen Variablen speichern Lenki PHP-Fortgeschrittene 8 18.03.2010 16:37
MySQL Abfrage mit PHP extrem langsam kip Datenbanken 6 24.08.2009 11:11
[Erledigt] MySql Frage: Problem mit einer etwas lomplexeren Abfrage tomtaz Datenbanken 5 24.06.2008 22:36
Abfrage bei mySQL 4 ApfeL Datenbanken 5 24.03.2006 18:53
MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
mySql Abfrage wie wäre die sauberer? PHP Tipps 2005-2 5 31.07.2005 19:26
Frage zur MySQL Abfrage Datenbanken 5 04.02.2005 12:31
Frage zu if abfrage (mysql) PHP Tipps 2004 2 28.08.2004 13:13

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql abfrage klick, datenban eintrag mit if anfrage php, mysql php erkennt wert aus query nicht, resource id #9 input feld value

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