 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
beginner18
Data înscrierii: 30/Aug/2004
Mesaje: 746
Locație: Bucuresti
|
| Trimis: Mar Mar 08, 2005 10:18 pm Titlul subiectului: forum cu probleme |
|
|
am incercat eu sa fac un forum..si dau de probleme.
problema e ca daca creez un topic, ce se aseamana cu unu deja existent, la afisarea a toate topicele, cele care se aseamana se intercaleaza. si am gandit ca inainte de scrierea unui topic in baza de date, sa caute sa vada daca mai exista unu..daca nu, sa scrie pur si simplu, daca mai exista, sa il introduca in baza de date cu un numar in fata(1,2,3,...).
an style="color: #000000"><?php if($submit=="Adauga"){
//cauta dublarile
$query2="SELECT title FROM `forum_posts` where replay_title='';"; //aici cauta daca mai exista un titlu in baza de date
$result2=mysql_query($query2) or die(mysql_error());
$num2=mysql_num_rows($result2);
$i=0;
while($i<$num2) {
$verificatitlu=mysql_result($result2,$i,"title"); //titlurile din baza de date
if($verificatitlu==$subiect){
$dublarif=$dublari+1; //$dublarif este acel numar care se introduce la dublurile de titluri
$query="insert into forum_posts values('','Instalare','$dublarif$subiect','$autor','','$comentariu','','$an-$luna-$zi $ora:$minut:$secunda');";
mysql_query($query) or die(mysql_error());
$query1="update forum_signin set doubles='$dublarif' where user='user1'";//se mareste numarul din baza de date
mysql_query($query1) or die(mysql_error());
break;}
$i++;}
Intrebarea este, cum fac atunci cand nu mai exista ceva in baza de date, unde pun codul de introducere in baza de date a titlului..
an style="color: #000000"><?php $query="insert into forum_posts values('','Instalare','$subiect','$autor','','$comentariu','','$an-$luna-$zi $ora:$minut:$secunda');";
mysql_query($query) or die(mysql_error());
daca il pun dupa, si mai exista un titlu, face acel query din while, si il face si pe ultimul afisat...aveti idee?(sper ca ati inteles neintelegerea mea..:)) |
|
| Sus |
|
lostone
Data înscrierii: 03/Feb/2005
Mesaje: 233
Locație: behind a firewall
|
| Trimis: Mie Mar 09, 2005 7:26 am Titlul subiectului: |
|
|
<?
if($submit=="Adauga"){
//cauta dublarile
$query2="SELECT title FROM `forum_posts` where replay_title='';"; //aici cauta daca mai exista un titlu in baza de date
$result2=mysql_query($query2) or die(mysql_error());
$num2=mysql_num_rows($result2);
$i=0;
// daca exista duble in db
if($num2 != 0) {
while($i<$num2) {
$verificatitlu=mysql_result($result2,$i,"title"); //titlurile din baza de date
if($verificatitlu==$subiect){
$dublarif=$dublari+1; //$dublarif este acel numar care se introduce la dublurile de titluri
$query="insert into forum_posts values('','Instalare','$dublarif$subiect','$autor','','$comentariu','','$an-$luna-$zi $ora:$minut:$secunda');";
mysql_query($query) or die(mysql_error());
$query1="update forum_signin set doubles='$dublarif' where user='user1'";//se mareste numarul din baza de date
mysql_query($query1) or die(mysql_error());
break; //vezi ca aici iti iese din loop si nu mai face incrementarea lui $i din urmatoarea declaratie...
}
$i++;
}
}
//altfel, baga direct in db topicul nou
else {
$query="insert into forum_posts values('','Instalare','$subiect','$autor','','$comentariu','','$an-$luna-$zi $ora:$minut:$secunda');";
mysql_query($query) or die(mysql_error());
}
?>
...asta daca am inteles bine ce voiai sa zici :P |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |
|