Php

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Hy ich hätt mal ne frage zu Php!

    Ich möchte mit Php eine tabelle generieren! Aber das ganze in einer schleife weil ich da was aus ner mysql datenbank auslese! Und die tabelle öfters vorkommen soll!

    Kann mir da wer helfen?

    mfg
    brucky
  • hi!

    also .. du machst deinen sql connect,
    und denn holst du die daten aus der db, und schreibst die in ein array,

    PHP-Quellcode

    1. $query = "SELECT * FROM dings WHERE dings < 17";
    2. $result = mysql_query($query);


    dann gibst du den anfang der tabell aus:

    PHP-Quellcode

    1. echo "<table>";


    dann öffnest du pro eintrag eine zeile:

    PHP-Quellcode

    1. while ($row = mysql_fetch_object($result))
    2. {
    3. echo "<tr>";
    4. echo "<td>".$row->eintrag1."</td>";
    5. echo "<td>".$row->eintrag2."</td>";
    6. echo "</tr>";
    7. // usw :D ;)
    8. }


    und die tabelle wieder schließen:

    PHP-Quellcode

    1. echo "</table>";


    hoffe das klappt so ;) :D
  • Ja ich denke so wirds funken!

    Danke! Hab momentan keine Zeit zum testen aber ich sags dir dan obs gefunkt hat!

    mfg brucky


    PS: ich hätte da noch ne frage zu JS:
    Wie kann ich in einem Fenster die Statusleiste, adressleiste und die werkzeugleiste verstecken? (Damit nur der Seiteninhalt angezeigt wird!)
  • in einem pop up?

    code für popup:

    Quellcode

    1. function main(url)
    2. {
    3. link = window.open(url,"Link","toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizeable=0,width=400,height=100,left=192,top=256");
    4. }


    und der aufruf:

    PHP-Quellcode

    1. <a href="javascript:main('seite.html')">PopUp</a>
  • Hy!

    schon wieder ne frage:

    Wie kann ich in PHP einen Link machen der Teile der URL zu der er linkt aus einer mysql-datenbank ausliest(mysql datenbank is klar! ;) )

    Transmitter?:rolleyes:

    mfg
    brucky
  • Jo das funkt! Big Thx! :D

    Jetzt brauch ich aber eh bitte noch was!

    Ich hab das folgende Formular

    PHP-Quellcode

    1. <form method="post" action="<? echo $PHP_SELF ?>">
    2. <table border="0" align="center">
    3. <tr>
    4. <td>Name</td>
    5. <td><input type="text" name="name" value="<? echo $name ?>" size="50"></td>
    6. </tr><tr>
    7. <td>e-mail</td>
    8. <td><input type="text" name="email" value="<? echo $email ?>" size="50"></td>
    9. </tr><tr>
    10. <td>Geburtsdatum</td>
    11. <td><input type="text" name="gebdat" value="<? echo $gebdat ?>" size="50"></td>
    12. </tr><tr>
    13. <td><input type="submit" name="submit" value="Abschicken"></td>
    14. </tr>
    15. </table>
    16. </form>
    Alles anzeigen


    Und ich möchte die Felder in ne MySql DB eintragen lassen!
    Hab schon 2 Tuts versucht aber die fnkrn beide nicht!

    Wenn mir da bitte jemand helfen könnte!;)

    mfg
    brucky
  • das ist ganz simpel:

    du übermittelst ja deine variablen an die gleiche datei, wo auch das script drinne ist.

    dann packst du einfach noch folgendes in dein formular:

    Quellcode

    1. <input type="hidden" name="enter" value="1">


    dann schreibst du ganz an den anfang von deiner php einfach eine if:

    PHP-Quellcode

    1. <?php
    2. if ( enter == 1 )
    3. {
    4. eintrag in die db usw;
    5. echo "erfolgreich eingetragen";
    6. }
    7. else
    8. {
    9. ?>
    10. deinen code den du jetzt schon hast mit dem formular usw;
    11. <?php
    12. }
    13. ?>
    Alles anzeigen


    evtl kannst du deine komplette <form> .. </form> in ne echo anweisung packen, oder in nen template, das ist vom stil her dann schöner ;)

    oder noch goiler: in functions ;)
  • Folgendes hab ich jetzt im body stehn:

    PHP-Quellcode

    1. <?
    2. <?
    3. if ( enter == 1 ) {
    4. $db = mysql_connect("localhost", "root");
    5. mysql_select_db("salvador",$db);
    6. $sql = "INSERT INTO mitglieder (name,email,gebdat) VALUES ('$name','$email','$gebdat')";
    7. $result = mysql_query($sql,$db);
    8. echo "Ihr Daten wurden abgeschickt! Vielen Dank!<br><br>";
    9. }
    10. else {
    11. ?>
    12. <form method="post" action="<? echo $PHP_SELF ?>">
    13. <table border="0" align="center">
    14. <tr>
    15. <td>Name</td>
    16. <td><input type="text" name="name" value="<? echo $name ?>" size="50"></td>
    17. </tr><tr>
    18. <td>e-mail</td>
    19. <td><input type="text" name="email" value="<? echo $email ?>" size="50"></td>
    20. </tr><tr>
    21. <td>Geburtsdatum</td>
    22. <td><input type="text" name="gebdat" value="<? echo $gebdat ?>" size="50"></td>
    23. </tr><tr>
    24. <td><input type="submit" name="submit" value="Abschicken"></td>
    25. <input type="hidden" name="enter" value="1">
    26. </tr>
    27. </table>
    28. </form>
    29. <?
    30. }
    31. ?>
    32. ?>
    Alles anzeigen


    Aber irgendiwe funkt das nicht! Es kommt wenn ich auf 'Abschicken' klicke immer wieder das Leere Formular!
    Hab schon probiert for das 'enter' ein '$' zu setzen da es ja ne variable is oder!
    Bitte nochmal um Hilfe! ;) :D

    mfg
    brucky
  • teste mal das

    PHP-Quellcode

    1. <?php
    2. if ( $enter == 1 ) 
    3. {
    4. $db = mysql_connect("localhost", "root");
    5. mysql_select_db("salvador",$db);
    6. $sql = "INSERT INTO mitglieder(name,email,gebdat) VALUES ('$name','$email','$gebdat')";
    7. $result = mysql_query($sql,$db);
    8. echo "Ihr Daten wurden abgeschickt! Vielen Dank!<br><br>";
    9. }
    10. else 
    11. {
    12. echo "<form method=\"post\" action=\"".$PHP_SELF."\">
    13. <table border=\"0\" align=\"center\">
    14. <tr>
    15. <td>Name</td>
    16. <td><input type=\"text\" name=\"name\" value=\"".$name."\" size=\"50\"></td>
    17. </tr><tr>
    18. <td>e-mail</td>
    19. <td><input type=\"text\" name=\"email\" value=\"".$email."\" size=\"50\"></td>
    20. </tr><tr>
    21. <td>Geburtsdatum</td>
    22. <td><input type=\"text\" name=\"gebdat\" value=\"".$gebdat."\" size=\"50\"></td>
    23. </tr><tr>
    24. <td><input type=\"submit\" name=\"submit\" value=\"Abschicken\"></td>
    25. <input type=\"hidden\" name=\"enter\" value=\"1\">
    26. </tr>
    27. </table>
    28. </form>
    29. }
    30. ?>
    Alles anzeigen


    ps: enter ist der name der variablen, und du kannst mit
    echo $enter; darauf zugreifen
    1 ist der aktuelle wert von $enter
  • Bei mir kommt da folgender Fehler:

    Parse error: parse error, unexpected $ in C:\Eigene Dateien\php\anmeldung.php on line 52

    das </html> si aber in der Zeile 51:confused: :confused:


    Hab aber noch ne Frage( Ich hoff ich nerv dich nicht zu sehr sonst musst dus sagen!:D :(

    ich möchte ein <select></select> automatisch mit daten aus der datenbank füttern!
    ich bring das aber nicht zwischen die <option> -tags!

    mfg
    brucky
  • guck mal, ob die zeilenumbrüche so funktionieren ..

    da macht die forensoftware hier was falsch :( ..

    und bei mir klappt das auch nicht, wenn ich das einfach nur in meinen editor kopiere und dann ausführe .. :(
    keine ahnung, muss ein fehler von vb sein, hatte ich schon mal gehabt :(

    und das mit den options ... soll sich das immer verändern?
    weil sonst würde ich sagen mach das statisch..

    wenn nicht müssen die werte mit ner while da rein

    so wie oben:

    while ($row = mysql_fetch_object($result))

    nur die html tags musst du halt setzen ;)
  • So ein letztes mal für heute...:D

    Das mit den Options bring ich auch irgendwie net hin!


    PHP-Quellcode

    1. while ($myrow = mysql_fetch_row($mitglieder))
    2. {
    3. echo"<option>";
    4. echo"$myrow[0]";
    5. echo"</option>";
    6. }


    Wo gehörn den da die <select> tags hin?
    Bis jetzt hat er den text immer zumindest teilweise neben das select geschrieben egal wo ich die tags gemacht hab!

    mfg
    brucky;)
  • PHP-Quellcode

    1. echo "<select name=\"irgendwas\">";
    2. while ($myrow = mysql_fetch_row($mitglieder))
    3. {
    4. echo"<option>";
    5. echo"$myrow[0]";
    6. echo"</option>";
    7. }
    8. echo "</select>";
    Alles anzeigen


    müsste so gehen?
  • Hy!

    Irgendwie funkt das nicht! Bei dir schon? Bei mir macht er so ein auswahlfeld und schreibt die Werte aus der Tabelle daneben hin!:confused:


    Sorry hat sich erledigt! :rolleyes: Hab nur was übersehen!:D


    mfg
    brucky
  • Kennt sich hier sonst jemand aus?
    Hab das Formular nach einem Tutorial mit den zugehörigen php-befehlen so gemacht :

    PHP-Quellcode

    1. <?
    2. if ($submit) {
    3. $db = mysql_connect("localhost", "root");
    4. mysql_select_db("salvador",$db);
    5. $sql = "INSERT INTO mitglieder (name,email,gebdat) VALUES ('$name','$email','$gebdat')";
    6. $result = mysql_query($sql,$db);
    7. echo "Datensatz erfolgreich aktualisiert!<br><br>";
    8. }
    9. ?>
    10. <form method="post" action="<? echo $PHP_SELF ?>">
    11. Name: <input type="text" name="name" value="<? echo $name ?>" size="20"><br>
    12. Email: <input type="text" name="email" value="<? echo $email ?>" size="20"><br>
    13. <input type="hidden" name="gebdat" value="<? $dat=date("Y-m-d");echo $gebdat; ?>">
    14. <input type="submit" name="submit" value="Eintragen!">
    15. </form>
    Alles anzeigen


    Wenn mir bitte jemand helfen könnte wär ich sehr dankbar;)

    mfg
    brucky
  • Hat leider auch nicht geholfen! Bringt das gleiche ergebnis!
    Es kommt einfach wieder nur das LEERE Formular!
    Ich vermute irgendwie das es beim 'If' was hat!
    Aber ich weis net was!:confused: :confused:

    mfg
    brucky
  • wollen wir das script mal verständlich analysieren


    zeile 1:

    PHP-Quellcode

    1. <?


    .. ich bevorzuge:

    PHP-Quellcode

    1. <?php


    das ist von dem standard her schöner

    zeile 3:

    PHP-Quellcode

    1. if ($submit) 


    in diesem falle wäre $submit eine boolsche variable, was ja auchin so fern nicht verkehrt ist ..
    der einzige nachteil an dieser boolschen var ist, dass eine variable dieser art nur die werte 0 oder 1 annehmen kann .. ( für wahr oder falsch ;) )
    ( 2, 578 und -4 gehen auch, das ist aber kein guter stil ;))

    dein mysql connect ist ok ( local gesehen! )

    das select auch.

    zeile 9:

    PHP-Quellcode

    1. $sql = "INSERT INTO mitglieder (name,email,gebdat) VALUES ('$name','$email','$gebdat')";


    ich lasse gern eine freizeile nach den kommata .. sieht hübscher aus

    dein result ist auch ok, und wichtig:
    der echo befehl wird auf jeden fall ausgeführt wenn das script im if zweig ist!!!
    also selbst wenn was nicht eingetragen wurde!

    zur kontrolle wäre besser:

    PHP-Quellcode

    1. if ( $result = mysql_query($sql,$db) )
    2. {
    3. echo "Datensatz erfolgreich aktualisiert!<br><br>";
    4. }
    5. else
    6. {
    7. echo "Leider nicht eingetragen";
    8. }


    oder so was ;)

    so .. jetzt in den html part :D

    line 18:

    PHP-Quellcode

    1. action="<? echo $PHP_SELF ?>">


    ja, das echo muss weg! .. ist mir gar nicht aufgefallen ;) ..
    das ist eine sogenannte umgebungsvariable ..

    @feuerstein: wenn du da in dem php script eine variable hinstellst passiert mit der nicht viel ;) ..

    also es ist schon richtig, dass $PHP_SELF per echo ausgegeben wird.
    da sollte dann /datei.php stehen.

    das ganze als action .. da du aber an die gleiche datei schicken willst, in der du auch das form zeugs hast, kannst du die action aber auch ganz weglassen...
    oder gibst einfach den namen der datei an und vermeidest flüchtigkeitsfehler mit kleinen php aufrufen ;)

    line 20:

    die value vom textfeld kannst du eigentlich weglassen, da du ja ein insert into hast und nicht ein select from, und auch nirgendswo anders die variablen deklarierst, also denen werte zuweist ... die sind also auch nur in dem schon "weggeschickten" formular sichtbar

    ebenso line 22.

    line 24:

    PHP-Quellcode

    1. <input type="hidden" name="gebdat" value="<? $dat=date("Y-m-d");echo $gebdat; ?>">


    hmm..sollte gebdat nicht für das geburtsdatum stehen?
    sollten das die personen nicht lieber selbst eingeben?
    aber ok ;) .. ist ja nur zur anschauung.

    line 26:

    PHP-Quellcode

    1. <input type="submit" name="submit" value="Eintragen!">


    hier kommen wir wieder auf bool zurück: deine boolsche variable $submit hat jetzt den wert: "Eintragen!" ... also .. für mich sieht das verdammt nach einem string aus .. aber weder nach ner 0 oder ner 1 ..
    ps: Eingetragen! geht hier auch, nur ist es fürchterlicher stil, und absolut inkompatibel zu anderen compilersprachen!!!

    wo hast du das script her?
    verklag die jungs ;) :p

    und zu guter letzt .. klar ist <html> / <body> usw nicht explizit pflicht im 4.x standard html .. aber einen schönen stil bitte sehr ;)

    so .. ich habe das mal geändert und schick dir das mal per mail zu das dingen .. läuft jetzt bei mir auf dem server, nur dass es wegen der falschen tabelle nicht eingetragen wird ;) ..

    cu - transmitter
  • Wow danke für die Analyse!

    das mit dem gebdat und so is mir schon klar!:D war nur einversuch ob wenigstens das eintragen des datums aus dem tut funkt!;)

    Und die </-tags hab ich natürlich auch! Hab ja nur den ohp-bereich gepostet!:D

    mfg
    brucky

    PS: Ich hab zwar deine E-mail noch nicht bekommen aber sie wird schon noch einfliegen!:D
  • So ich hab das mail jetzt!

    Aber es tut mir leid dir das sagen zu müssen..;)
    es funkt leider nicht!
    Er geht nie in das if! Er gibt auch dn fehler undefined varibale aus(für $submit).

    Habs jetzt auch mit einer 2ten seite probiert! erscheint mir vielleicht eh besser aber da weiß ich wieder nicht wie das geht:( :D


    mfg
    brucky
  • ja, eine 2te seite ist auch fürs erste wesentlich übersichtlicher ..

    hast du deinen http am net hängen?

    also bei mir hat das geklappt .. sicher, dass deine konfiguration vom apache stimmt?

    bei 2 files ist das so:
    den ersten file baust du komplett in html .. und als action gibst du datei.php ein.

    und dann machst du die if ($submit) {
    und }
    weg und die ganze html ausgabe .. dann hast du schon den passenden inhalt für deine php datei :)