post in einem forum

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

  • post in einem forum

    PHP-Quellcode

    1. <?php
    2. $quer = "SELECT topic_title,topic_id,forum_id FROM topic WHERE topic_id = '".$t."'";
    3. $res = mysql_query($quer,$conn);
    4. if (!$res)
    5. {
    6. echo("<br> Database connection failed; ". mysql_error() ."<br>");
    7. }
    8. $var= mysql_fetch_array($res);
    9. ?>
    10. <tr>
    11. <td width="9" background="images/strich.jpg"></td>
    12. <td width="592" height="12" ><?php echo $var['topic_title']; ?></td>
    13. <td width="292" height="12" > <div align="right"> <a href="board.php">main</a>
    14. | <a href="viewforum.php?f=<?php echo $var['forum_id']; ?>">threads</a>
    15. | <a href="dthread.php?f=<?php echo $var['topic_id']; ?>">del</a> | <a href="cthread.php?f=<?php echo $var['topic_id']; ?>">close</a> -</div></td>
    16. <td background="images/strich.jpg" width="9" height="12"></td>
    17. </tr>
    18. <tr>
    19. <td colspan="4"></td>
    20. </tr>
    21. <?php
    22. $query = "SELECT topic_id,post_id,poster_id,poster_nick,post_date,post_time,post_text FROM posts WHERE topic_id = '".$t."'";
    23. $result = mysql_query($query);
    24. if (!$result)
    25. {
    26. echo("<br> Database connection failed; ". mysql_error() ."<br>");
    27. }
    28. while ( $row = mysql_fetch_array($result))
    29. {
    30. ?>
    31. <tr>
    32. <td colspan="4"></td>
    33. </tr>
    34. <tr>
    35. <td background="images/strich.jpg"></td>
    36. <td width="592" height="12">- <a href="profil.php?m=<?php echo $row['poster_id']; ?>"><?php echo $row['poster_nick']; ?></a></td>
    37. <td width="292" height="12"> <div align="right"><?php echo $row['post_date']; ?> | <?php echo $row['post_time']; ?>
    38. -</div></td>
    39. <td background="images/strich.jpg" ></td>
    40. </tr>
    41. <tr>
    42. <td background="images/strich.jpg"></td>
    43. <td height="12" colspan="2"></td>
    44. <td background="images/strich.jpg"></td>
    45. </tr>
    46. <tr>
    47. <td background="images/strich.jpg"></td>
    48. <td colspan="2"><?php echo $row['post_text']; ?></td>
    49. <td background="images/strich.jpg"></td>
    50. </tr>
    51. <tr>
    52. <td background="images/strich.jpg"></td>
    53. <td height="12" colspan="2"></td>
    54. <td background="images/strich.jpg"></td>
    55. </tr>
    56. <tr>
    57. <td background="images/strich.jpg"></td>
    58. <td width="592" height="12">- <a href="pmess.php?m=<?php echo $row['poster_id']; ?>">message</a> | <a href="profil.php?m=<?php echo $row['poster_id']; ?>">profile</a></td>
    59. <td width="292" height="12"> <div align="right"><a href="edit.php?p=<?php echo $row['post_id']; ?>">edit</a>
    60. | <a href="del.php?p=<?php echo $row['post_id']; ?>">del</a> | <a href="#oben">top</a> -</div></td>
    61. <td background="images/strich.jpg"></td>
    62. </tr>
    63. <tr>
    64. <td colspan="4"><td>
    65. </tr>
    66. <?php } ?>
    67. </table>
    68. <?php if (session_is_registered('username')){ ?>
    69. <div align="center"><textarea name="message" rows="10" cols="60" wrap="virtual" ></textarea>
    70. <br>&nbsp;
    71. <br><input type="submit" name="submit" value="submit"></div>
    72. <?php
    73. if ($submit == "submit")
    74. {
    75. $sql = "INSERT INTO posts SET
    76. topic_id='$t',
    77. poster_nick='$username',
    78. poster_id='$uid',
    79. post_time=CURTIME(),
    80. post_date=CURDATE(),
    81. post_text='$message'";
    82. if (@mysql_query($sql)){}
    83. else
    84. {
    85. echo("<p>Post failed; ". mysql_error() ."</p>");
    86. }
    87. }
    88. }
    89. mysql_close($conn);
    90. ?>
    Alles anzeigen


    also 1. ich übergebe über den link die variable t und meine frage ist warum ich die dann unten nichtmehr verwenden kann wenn ich den post in die datenbank schreiben will (da schreibt er mir immer nur 0 hinein)!

    2. wie kann ich er erreichen, dass wenn der user in der texteria einen zeilenumbruch macht mit ENTER das er in die datenbank an diese stellen

    PHP-Quellcode

    1. <br>
    schreibt

    3. wie kann ich es erreichen, dass wenn der user den submit button gedrückt nach dem einschreiben in die datenbank wieder auf das vorhergehende topic kommt mit der gleichen übergangsvariable t ( mit header gehts ja nicht oder?)

    form ist im moment:

    PHP-Quellcode

    1. <form action="<?=$PHP_SELF?>" method="post">
  • also zu 1.:

    lass dir $t mal irgendwo oben ausgeben.

    probier den query mal so:

    Quellcode

    1. $query = "SELECT  topic_id,post_id,poster_id,poster_nick,post_date,post_time,post_text FROM posts WHERE topic_id = $t";


    also das $t direkt darein.

    zu 2.:

    $var_aus_der_textarea = nl2br ( $var_aus_der_textarea );

    zu 3.:

    entweder mit nem hidden field, oder wirklich per get ...

    PHP-Quellcode

    1. <form action="<? $PHP_SELF?>?t=<?php echo $t; ?>" method="post">
  • Danke werd ich sofort mal testen sobald ich wieder zuhause bin bin im moment noch in der schule!

    thx
    cu grindL

    EDIT:

    ok ich hab das jetzt so gemacht wie du das gesagt hast das einzige prob ist jetzt noch das wenn er wieder zurück zum thread geht das man dann den gerade eben gesendeten post noch nicht sieht weil er die seite nicht neu lädt. was kann ich da machen?