forum kleines prob

  • #1
K

kernel

Aktives Mitglied
Themenersteller
Dabei seit
11.05.2006
Beiträge
37
Reaktionspunkte
0
hab im groben ein forum programmiert aber jetz kann ich keine topics erstellen?? ??? wenn ich aber die topic.php aufrufe kann ich einträger schreiben.
forumaktuell.php

Code:
<?php
$timestamp = time();
define ('MYSQL_HOST',->localhost') ;
define ('MYSQL_USER',->root');
define ('MYSQL_PASS',->selfhtml');
define ('MYSQL_DATABASE',->forum1');
$db_link = mysql_connect(MYSQL_HOST , MYSQL_USER , MYSQL_PASS);
mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());


if($_GET[action] == addtopicaktuell)
{

    if($_GET[action2] == do)
  {
$topic=$_POST[topic];
$autor=$_POST[autor];
$post=$_POST[post];

 $result = mysql_query(INSERT INTO aktuell2 (id,topic,zeit,autor)
  VALUES ('','$topic','$timestamp','$autor'));

$sql = SELECT * FROM aktuell2 WHERE zeit=$timestamp;
 $result2 = mysql_query($sql) OR die(mysql_error());
  while($row = mysql_fetch_assoc($result2)) {
    $tidn = $row['id'];
        }
echo Die neue id heißt: $tidn;
        
 $result = mysql_query(INSERT INTO aktuell1 (id,tid,zeit,autor,post)
  VALUES ('','$tidn','$timestamp','$autor',->$post'));


    }
		
echo<table align=\center\ ><tr><td><form action=\?action=addtopicaktuell&action2=do\ method=\post\>
Topic: <input type=\text\ name=\topic\ width=\200\ height=\10\><br>
Autor: <input type=\text\ name=\autor\ width=\200\ height=\10\><br>
post: <textarea name=\post\></textarea><br>
<input type=\submit\ >
<input type=\reset\>
</form></td></tr></table>;
exit();
}


if(@$action==add)
{
$timestamp = time();
    $sql =->INSERT INTO `aktuell2` (`id`, `zeit`, `autor`) VALUES ( \'\', \'$timestamp\' ,->.$_POST[autor].');';
    $sql = SELECT id FROM aktuell2 where zeit=$timestamp AND autor='$autor';
 $result2 = mysql_query($sql) OR die(mysql_error());
  while($row = mysql_fetch_assoc($result2))
{
    $tid = $row['tid'];
        }
   
    $sql =->INSERT INTO `aktuell2` (`id`, `tid` `zeit`, `autor`, `post`) VALUES ( \'\', \'$tid\' , NOW() ,->.$_POST[autor].',->.$_POST[post].');';
    $result = mysql_query(`SELECT post FROM topicaktuell`) OR die(mysql_error());
    echo post der Tabelle forum.$result ;
     echo <br />\n;
}



$sql = SELECT * FROM aktuell2;
 $result2 = mysql_query($sql) OR die(mysql_error());
  echo News in der Datenbank:<br />\n;
  while($row = mysql_fetch_assoc($result2)) {
$ttimestamp = $row['zeit'];
    echo <a href=\topicaktuell.php?tid= . $row['id'].\> . $row['topic'].</a> > .$row['autor']. >  . date(d.m.Y H:i, $ttimestamp) .<br />\n;
        };

echo
<html>
<head></head>
<body>
<br><a href=\ausgabe.php\>ausgabe</a> | <a href=\forumaktuell.php?action=addtopic\>neues Topic</a>
</body>
</html>;
?>

topicaktuell.php
Code:
<?php
define ('MYSQL_HOST',->localhost') ;
define ('MYSQL_USER',->root');
define ('MYSQL_PASS',->selfhtml');
define ('MYSQL_DATABASE',->forum1');
$db_link = mysql_connect(MYSQL_HOST , MYSQL_USER , MYSQL_PASS);
if($db_link) {
    echo Verbindung wurde aufgebaut<br />\n;
    echo In der Variable steht folgendes: .$db_link;
  } else {
    echo Es konnte keine Verbindung aufgebaut werden;
  } 
	 echo <br />\n; 
	mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());

if($_GET[action] == add)
{
$stimestamp = time();

$tid = $_GET[tid];
$autor=$_POST[autor];
$post= $_POST[post];

 $result = mysql_query(INSERT INTO aktuell1 (id,tid,zeit,autor,post)
  VALUES ('','$tid','$stimestamp','$autor',->$post'));




}

$i = 1;
$sql = SELECT * FROM aktuell1 WHERE tid=' . $_GET[tid] .-> LIMIT 0, 30;
 $result2 = mysql_query($sql) OR die(mysql_error());
  while($row = mysql_fetch_assoc($result2)) {
	$times = $row['zeit'];
    		
				if ($i%2==0) { 
					
				echo <table align=\center\><tr><td bgcolor=\FF0000\>;
				echo <b>$i.) </b> . $row['autor']. :  . date(d.m.Y H:i, $times) .<br>. $row['post'] . <br>;
				echo </td></tr></table>; }
				else {
				
				echo <table align=\center\><tr><td bgcolor=\00ff00\>;
				echo <b>$i.) </b> . $row['autor']. :  . date(d.m.Y H:i, $times) .<br>. $row['post'] . <br>;
				echo </td></tr></table>;
				};
		$i++; 
		}
		
echo<table align=\center\><tr><td>
<form action=\?action=add&tid= . $_GET['tid'] . \ method=\post\>
<input type=\text\ name=\autor\ width=\200\ height=\10\><br>
<input type=\text\ name=\post\ width=\100\ height=\100\><br>
<input type=\submit\>
<input type=\button\>
</form>
</td></tr></table>;
?>
und meine datenbank

Code:
-- phpMyAdmin SQL Dump
-- version 2.9.0.1
-- [url]http://www.phpmyadmin.net[/url]
-- 
-- Host: localhost
-- Erstellungszeit: 23. Dezember 2006 um 11:38
-- Server Version: 5.0.24
-- PHP-Version: 5.1.6
-- 
-- Datenbank: `forum1`
-- 

-- --------------------------------------------------------

-- 
-- Tabellenstruktur für Tabelle `aktuell1`
-- 

CREATE TABLE `aktuell1` (
 `id` int(9) NOT NULL auto_increment,
 `tid` int(11) NOT NULL,
 `zeit` int(11) NOT NULL,
 `autor` varchar(255) collate latin1_general_ci NOT NULL,
 `post` longtext collate latin1_general_ci NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=3 ;

-- 
-- Daten für Tabelle `aktuell1`
-- 

INSERT INTO `aktuell1` VALUES (1, 0, 1166869887,->asdf',->asdf');
INSERT INTO `aktuell1` VALUES (2, 0, 1166869893,->asdf',->asdf');

-- --------------------------------------------------------

-- 
-- Tabellenstruktur für Tabelle `aktuell2`
-- 

CREATE TABLE `aktuell2` (
 `id` int(9) NOT NULL,
 `topic` varchar(255) collate latin1_general_ci NOT NULL,
 `zeit` int(9) NOT NULL,
 `autor` varchar(255) collate latin1_general_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

-- 
-- Daten für Tabelle `aktuell2`
--
schöne weihnachten
 
  • #2
Code:
<a href=\forumaktuell.php?action=addtopic\>neues Topic</a>
führt ins Nirvana ;)

Korrekt wäre:
Code:
<a href=\forumaktuell.php?action=addtopicaktuell\>neues Topic</a>
oder andersrum, wenn du deine $_GET-Abfrage anpasst ;)

Tabelle => aktuell2 => id benötigt einen Auto-Index, sonst bekommen alle Postings die ID => 0 :froehlich1:

Code:
<?php
...
...
$sql = SELECT * FROM aktuell2 WHERE zeit=$timestamp;
$result2 = mysql_query($sql) OR die(mysql_error());

while($row = mysql_fetch_assoc($result2)) {
  $tidn = $row['id'];
}
echo Die neue id heißt: $tidn;
....
....
?>

Kannste auch einfacher haben:
Code:
<?php
...
...
$result = mysql_query(INSERT INTO aktuell2 (id,topic,zeit,autor) VALUES ('','$topic','$timestamp','$autor')) OR die(mysql_error());

$tidn = mysql_insert_id();
...
...
?>

Weiter hab ich nicht getestet, fix erstma die Sachen, dann sehen wir weiter :1

Frohe Oschtere :coolsmiley:
 
  • #3
danke
:D
funzt alles ;D
schönes fest
 
Thema:

forum kleines prob

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.839
Beiträge
707.962
Mitglieder
51.492
Neuestes Mitglied
Janus36
Oben