Wenn ich nun diese uniqid im Newstable und Newscommentstable erstelle, was soll ich dann tun ?
Newsscript
Einklappen
X
-
An sich nur die newsid (bigint?) durch einen varchar der größe - sagen wir 20 zeichen - ersetzen. Ansonsten bleibt im handling der Daten alles gleich - die ehemalige Zahl und jetzige ID verknüpft News und Comments.Eventuelle Tippfehler bei PHP-Beispielen können durchaus vorkommen, aber es geht um die grundsätzliche Möglichkeit der Anwendung.
Es war einmal ein Benutzer, der hatte ein Problem mit ... PHP (http://de3.php.net/manual/de/) MySQL (http://dev.mysql.com/doc/mysql/de/) HTML (http://www.selfhtml.org/)
Wer suchet, der findet: http://www.php-resource.de/forum/search.php
Immer noch nichts? Dann frag!
Mit freundlichen Grüßen,
@4u
Kommentar
-
Ich habe folgendes Problem: Es wird bei jeden Comment den ich poste die jeweilige ID des Comments zu der jeweilig selben ID einer News angepasst, d.h. ich kann pro News nur einen Comment abgeben, was muss ich tun ?Zuletzt geändert von jOhnny knOx; 27.05.2003, 23:43.
Kommentar
-
Original geschrieben von jOhnny knOx
Ich habe folgendes Problem: Es wird bei jeden Comment den ich poste die jeweilige ID des Comments zu der jeweilig selben ID einer News angepasst, d.h. ich kann pro News nur einen Comment abgeben, was muss ich tun ?
Code:tabelle news: - news-ID (auto_increment) - überschrift - inhalt - ... tabelle comments: - comment-ID (auto_increment) - news-ID (ganz normaler int-wert, über diesen stellst du die verbindung zur entsprechenden news her, d.h. die news-ID aus der news- tabelle kommt hier rein) - username - kommentar - datum - ...
I don't believe in rebirth. Actually, I never did in my whole lives.
Kommentar
-
Also ich habe nun das Problem dass die newsid nicht erweitert wird, ich benutze den folgenden Code, dafür die id bleibt aber die letzte newsid:
PHP-Code:$order = mysql_query("SELECT * FROM $news_tname ORDER BY newsid DESC");
while ($news = mysql_fetch_array($order)) {
$newsid = "$news[id]"; }
$newsid++;
mysql_query("INSERT INTO $news_tname (newsid, catid, title, text, date, time) VALUES ('$newsid', '$catid', '$title', '$text', '$d_tdy', '$d_time')");
Kommentar
-
PHP-Code:$newsid = "$news[id]"; // das ist ein string
$newsid = $news[id]; // das sollte gehen
schau dir wahsagas antwort noch mal in ruhe an.
Kommentar
-
So sieht meine Erstellung der Tabellen aus:
Code:mysql_query("CREATE TABLE $news_tname ( id int(14) NOT NULL auto_increment, newsid int(11) DEFAULT '0' NOT NULL, PRIMARY KEY (id), title varchar(100), text longtext, date varchar(100), time varchar(100) )"); mysql_query("CREATE TABLE $news_com_tname ( id int(14) NOT NULL auto_increment, newsid int(11) DEFAULT '0' NOT NULL, PRIMARY KEY (id), name varchar(100), email varchar(100), ip varchar(100), text longtext, date varchar(100), time varchar(100) )");
PHP-Code:$newsid++;
Kommentar
-
mysql_query("CREATE TABLE news_tname (
id int(14) NOT NULL auto_increment, <= eindeutige ID
newsid int(11) DEFAULT '0' NOT NULL, <= die ist dann unnötig
PRIMARY KEY (id),
title varchar(100),
text longtext,
date varchar(100),
time varchar(100)
)");
mysql_query("CREATE TABLE $news_com_tname (
id int(14) NOT NULL auto_increment,
newsid int(11) DEFAULT '0' NOT NULL, <= hier steht id aus news_tname drin, darüber wird verknüpft
PRIMARY KEY (id),
name varchar(100),
email varchar(100),
ip varchar(100),
text longtext,
date varchar(100),
time varchar(100)
)");
was du versuchst ist also doppeltgemoppelt wie man bei uns im tal sagt
Kommentar
-
Um den Comments eine bestimmte News anzupassen, denn die ID ist für die News gedacht und newsid für die Comments, auch wenn der Name newsid täuschen sollte.
Also: Mir geht es jetzt nur darum die newsid bei jedem Eintrag wie bei dem auto_increment um einen Wert zu erhöhen, nur eben manuell, was leider nicht mit $newsid++; funktioniert.
Kommentar
-
bitte, wenns denn so sein soll ...
versuchs mal damit:
PHP-Code:$newsid = $news[id]+1;
Kommentar
-
Okay, ich habe mein Problem nun wie folgt gelöst:
PHP-Code:$res = mysql_query("SELECT count(id) as nums FROM $news_tname ORDER BY newsid DESC");
$cache = mysql_fetch_array($res);
$num_rows = $cache[nums]+1;
mysql_query("INSERT INTO $news_tname (newsid, catid, title, text, date, time) VALUES ('$num_rows', '$catid', '$title', '$text', '$d_tdy', '$d_time')");
Zuletzt geändert von jOhnny knOx; 28.05.2003, 15:12.
Kommentar
-
Um zu den Related Links zurueckzukommen. Kannst du das vielleicht nochmal genauer erklären wie ich das Folgende verwenden soll ?
Original geschrieben von a4u
Wie wäre es mit:
PHP-Code:$related_links_line = "";
foreach ($related_links as $this_link)
{
if ($related_links_line != "") { $related_links_line .= ", "; }
$related_links_line .= "<a href='".$this_link['url']."' target='_top'>".$this_link['title']."</a>";
}
if ($related_links_line != "")
{
echo "<p><span style='font-style:italic'>Weiterführende Links:</span> $related_links_line</p>";
}
EDIT:
php.tags by wotan
Kommentar
-
ich hab glaub das Problem net ganz gerafft da ich gerade etwas Konzentration bedingt net klar denken kannn aber....
Weshalb wird der News Tabelle net einfach eine ID als Primary Key + Auto_invcrement verpasst, und alles andere was dazugehört.
Und dann mit einer zweiten Tabelle (comments) verknüpft über die id von den News, und die comments bekommen dann auch noch einen primary key id.
sind dann so aus:
User zeigt sich die News an (eine DB-Query)
möchte nun auch die Comments sehen (erst dann zweite Query, die als "inner join" bzw. "left join" was ihr wollt die comments zu dieser News rauszieht und anzeigt.
Ich versteh net ganz weshalb so aufwenig
Naja bin geistig gerade auf dem Tiefpunkt[color=blue]MfG Payne_of_Death[/color]
[color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
[color=red]Merke:[/color] [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->
Murphy`s Importanst LAWS
Jede Lösung bringt nur neue Probleme
Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
In jedem kleinen Problem steckt ein großes, das gern raus moechte.
Kommentar
Kommentar