Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Dubbla poster vid utskrift

Postades av 2009-03-21 20:35:36 - Anders Hall, i forum php, Tråden har 4 Kommentarer och lästs av 1421 personer

Har haft något liknande vid ett annat tillfälle, men har nu kört fast och ser inte felet med denna kod eller vad jag missat.
Har en 2-kolumns sida som jag plockar fram inlägg och kommentarer på vänstra sidan, och på högra sidan vill jag ha fram namnen på de som är registrerade och kunna klicka på länken för att komma till deras respektive inlägg med kommentarer.
Som jag har det nu så kommer det en upprepning av antal inlägg på höger sida, alltså om det finns tre inlägg av olika personer på denna sida så kommer det på höger sida
bosse
bosse
bosse
nisse
nisse
nisse
olle
olle
olle
det som ska sägas är att jag plockar fram inlägg och kommentarer via $nid i koden, så det borde vara ett namn av varje istället. Varje inlägg får ett nid i koden t.ex 4,5,6 och via länken så ser det ut så här på vänstrar sidan där det funkar ?p=read&nid=5, men på höger blir det ?p=readUser&nid=
read och readUser ser likadana ut bara två olika sidor.

Så här ser sidan ut.

<?php
// ===========================================================================================
 
// Create and print out the resulting page
//
require_once('CHTMLPage.php');

$page = new CHTMLPage();

$title = "PTemplate2Columns";
$style = "step14_twocolumns.css";


$page = new CHTMLPage($style);

// -------------------------------------------------------------------------------------------
//
// Page specific code
//
$html = <<<EOD
Byt utseende
<h2>Senaste blogg-inl&auml;ggen</h2>

EOD;

$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);

if (mysqli_connect_error()) {
   echo "Connect failed: ".mysqli_connect_error()."<br>";
   //exit();
}
$query = "SELECT * FROM blogg ORDER BY datum DESC;";

$res = $mysqli->query($query) 
                    or die("Could not query database");
              
 while($row = $res->fetch_object()) {
    if ($qkom = $mysqli->query("SELECT * FROM kommentarer WHERE nid = '{$row->id}' ORDER BY nid DESC")) {
        /* determine number of rows result set */
        $count = $qkom->num_rows;
        /* close result set */
        $qkom->close();
    }  
    $html .= <<< EOD
   <h2>$row->rubrik<br></h2>
    $row->text<br><br>
    Skrivet av\n $row->forfattare
    $row->datum<br>
   

<!--<p>Antal inl&auml;gg som visas: {$res->num_rows}</p> -->
 
<p>Antal kommentarer: ($count)\nKommentera\nLäs mer</p>
EOD;
}  

$res->close();
$page->addPageBodyLeft($html);

$html = <<<EOD

<h4>Andvändare</h4>


EOD;

$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);

if (mysqli_connect_error()) {
   echo "Connect failed: ".mysqli_connect_error()."<br>";
  
}
$query = "SELECT * FROM blogg, membersmembers ORDER BY id;";
//$query = "SELECT namnUser, ansvarsomrade FROM membersmembers";

$res = $mysqli->query($query) 
                    or die("Could not query database");
                    

/* execute multi query */
if ( $mysqli -> multi_query ( $query )) {
do {
/* store first result set */
if ( $result = $mysqli -> store_result ()) {
while ( $row = $result -> fetch_row ()) {

}
$result -> free ();
}
/* print divider */
if ( $mysqli -> more_results ()) {
printf ( "-----------------\n" );
}
} while ( $mysqli -> next_result ());
}

/* close connection */
//$mysqli -> close (); 

               

 while($row = $res->fetch_object()) {
    if ($qkom = $mysqli->query("SELECT * FROM kommentarer WHERE nid = '{$row->id}' ORDER BY nid DESC")) {
        /* determine number of rows result set */
        $count = $qkom->num_rows;
        /* close result set */
        $qkom->close();
    }  	
    $html .= <<< EOD
   
   <p>$row->namnUser\n<br> $row->ansvarsomrade\nLäs inlägg</p>
   
    


EOD;
}

$res->close();
$page->addPageBodyRight($html);

// -------------------------------------------------------------------------------------------
//
// Print out the resulting page
//
$page->printPage($title);

?>


använder jag queryn som tar fram membersmembers så kommer det fram endast ett namn som det borde men får inte fram $nid i länken, och kör jag som det visas i koden nu så kommer det som jag visar ovan alltså tre namn av varje med t.ex
bosse = nid 4
bosse = nid 5
bosse = nid 6
borde vara bosse nid 4, nisse nid 5, olle nid 6.

Hur löser jag detta, behöver ni mer kod eller info säg till.


Svara

Sv: Dubbla poster vid utskrift

Postades av 2009-03-21 23:45:17 - Per Persson

Det är säkerligen den här SQL-satsen som ställer till det:
<b>SELECT * FROM blogg, membersmembers ORDER BY id</b>

Varje post i blogg kombineras med varje post i membersmembers.

Du vill nog ha dit ett JOIN-villkor, typ:
<b>SELECT * FROM blogg, membersmembers WHERE blogg.members_id=membersmembers.members_id ORDER BY id</b>

Jag vet inte hur dina tabeller ser ut, så jag kan inte ge en exakt lösning.


Svara

Sv:Dubbla poster vid utskrift

Postades av 2009-03-22 18:58:40 - Anders Hall

Gör en uppdatering med mina tabeller i db.
Det kanske blir lättare att se mitt fel.

CREATE TABLE IF NOT EXISTS `blogg` (
`id` int(11) NOT NULL auto_increment,
`rubrik` varchar(300) NOT NULL default '',
`text` varchar(10000) NOT NULL default '',
`forfattare` varchar(50) NOT NULL default '',
`datum` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;


CREATE TABLE IF NOT EXISTS `kommentarer` (
`id` int(11) NOT NULL auto_increment,
`nid` int(11) NOT NULL default '0',
`titel` varchar(255) NOT NULL,
`namn` varchar(255) NOT NULL,
`datum` varchar(255) NOT NULL,
`innehall` text NOT NULL,
PRIMARY KEY (`id`),
KEY `nid` (`nid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;


CREATE TABLE IF NOT EXISTS membersmembers (
idUser int(11) NOT NULL auto_increment,
namnUser varchar(30) NOT NULL,
passwordUser varchar(32) NOT NULL,
ansvarsomrade varchar(32) NOT NULL,
emailUser varchar(100),
PRIMARY KEY (idUser)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2;


Svara

Sv: Dubbla poster vid utskrift

Postades av 2009-03-25 23:14:46 - Per Persson

Jag kan fortfarande inte ge dig en exakt lösning. Men varför har du med två tabeller i den SQL-satsen som jag pekade på, utan att du har någon koppling mellan dem?


Svara

Sv:Dubbla poster vid utskrift

Postades av 2009-03-26 20:20:12 - Anders Hall

Har testat med en del olika lösningar, en var att lägga idUser i blogg tabellen och koppla ihop dessa två
men då kunde jag inte posta till databasen fick bara fel.

Men har nu ändrat och gjort så att jag plockar ut medlemmar för sig och inlägg för sig, men det var inte det som jag hade som ide från början. Tanken var att jag skulle kunna få fram namn och id och kunna klicka på detta och komma till respektive inlägg som denna har skrivit.

Men kör så här och lägger tråden som löst på detta sätt.
Detta blir att jag visar alla namn med ansvarsområde i en lista och under dessa de senaste inläggen, funkar för tillfället som det bör med detta.

Men tack för svaren.


Svara

Nyligen

  • 19:38 Rekommendera något intressant
  • 19:13 Международная перевозка грузов
  • 00:01 DL Van Tuning | Exclusive Body Kit
  • 12:08 Indian casino
  • 04:14 Vad finns det för kratomalternativ
  • 14:16 Indian online casino
  • 14:15 Indian online casino
  • 08:28 Butiksskyltar: Hur upplever utbude

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 869
27 965
271 770
831
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies