abonnement Unibet Coolblue Bitvavo
  donderdag 24 augustus 2006 @ 09:28:02 #91
127844 ronvonflon
--- ook voor jou! ---
pi_41120436
Ik ben waarschijnlijk heel omslachtig aan het doen, hopelijk kan iemand mij een stukje verder helpen. Wat ik wilis het volgende:
op de pagina frontpage.php wil ik het laatste nieuwsbericht weergeven. Alle nieuwsberichten staan
in dezelfde tabel en in die tabel staan verder ook geen andere berichten.
Het SELECT MAX(id) FROM $table werkt hiervoor dus prima.
Dit heb ik ook werkend gekregen. Nu wil ik alleen verderop in de pagina links en titels van de 5
voorgaande berichten weergeven.

Ik krijg dit alleen voor elkaar door 5 extra $result, $links en $id te maken. dus result1 =,
result2= etc etc
dit lijkt me makkelijker te moeten kunnen, allen kan ik niet echt vinden waar.

Misschien is de code die er nu staat ook al te omslachtig. ik heb namelijk wat dingen aan elkaar
lopen breien.

code tot nu toe:
$id_max = mysql_result(mysql_query("SELECT MAX(id) FROM $table"),0,0);
$result = mysql_query("SELECT * FROM $table WHERE id=$id_max",$db);

$links = mysql_fetch_array($result);

$TITEL = $links["TITEL"];
$BODY = $links["BODY"];
$BGPHOTO = $links["BGPHOTO"];
$THUMBPHOTO = $links["THUMBPHOTO"];
$MARKPHOTO = $links["MARKPHOTO"];
$PHOTO = $links["PHOTO"];
$MARKVIDEO = $links["MARKVIDEO"];
$VIDEO = $links["VIDEO"];
$MARKNEWS = $links["MARKNEWS"];

kan iemand me een beetje op weg helpen?
--- niet voor mietjes! ---
pi_41120691
Ehh, eerst alle 10 eerste records in array krijgen.

En vervolgens 2 keer een for/while whatever loop aanroepen die 1 keer record 0-4 print, en de tweede 5-9.

SELECT * FROM $table LIMIT 10

en dan verder.
pi_41121687
quote:
Op donderdag 24 augustus 2006 09:28 schreef ronvonflon het volgende:
Ik ben waarschijnlijk heel omslachtig aan het doen, hopelijk kan iemand mij een stukje verder helpen. Wat ik wilis het volgende:
op de pagina frontpage.php wil ik het laatste nieuwsbericht weergeven. Alle nieuwsberichten staan
in dezelfde tabel en in die tabel staan verder ook geen andere berichten.
Het SELECT MAX(id) FROM $table werkt hiervoor dus prima.
Dit heb ik ook werkend gekregen. Nu wil ik alleen verderop in de pagina links en titels van de 5
voorgaande berichten weergeven.

Ik krijg dit alleen voor elkaar door 5 extra $result, $links en $id te maken. dus result1 =,
result2= etc etc
dit lijkt me makkelijker te moeten kunnen, allen kan ik niet echt vinden waar.

Misschien is de code die er nu staat ook al te omslachtig. ik heb namelijk wat dingen aan elkaar
lopen breien.

code tot nu toe:
$id_max = mysql_result(mysql_query("SELECT MAX(id) FROM $table"),0,0);
$result = mysql_query("SELECT * FROM $table WHERE id=$id_max",$db);

$links = mysql_fetch_array($result);

$TITEL = $links["TITEL"];
$BODY = $links["BODY"];
$BGPHOTO = $links["BGPHOTO"];
$THUMBPHOTO = $links["THUMBPHOTO"];
$MARKPHOTO = $links["MARKPHOTO"];
$PHOTO = $links["PHOTO"];
$MARKVIDEO = $links["MARKVIDEO"];
$VIDEO = $links["VIDEO"];
$MARKNEWS = $links["MARKNEWS"];

kan iemand me een beetje op weg helpen?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$berichten
=mysql_query("SELECT * FROM $table ORDER BY id DESC LIMIT 5",$db); $num=1;
while(
$bericht=mysql_fetch_array($berichten)){
    if(
$num==1){
        
$grootbericht="Bericht met onder andere $bericht[titel], $bericht[body], $bericht[bgphoto], etc";
    }else{
        
$kleineberichten.="$bericht[titel]<br />";
    }
    
$num++;
}

echo
$grootbericht.'<br />'.$kleineberichten;
?>


Zoiets?
  donderdag 24 augustus 2006 @ 10:33:16 #94
127844 ronvonflon
--- ook voor jou! ---
pi_41121869
ik heb geen idee wat ik fout doe, maar ik krijg geen output:

<?php
include("admin/include/config.php");

$db = mysql_connect("$dbserver", "$dbuser", "$dbpass");
mysql_select_db("$dbname",$db);


$TITEL = $bericht["TITEL"];
$BODY = $bericht["BODY"];
$BGPHOTO = $bericht["BGPHOTO"];
$THUMBPHOTO = $bericht["THUMBPHOTO"];
$MARKPHOTO = $bericht["MARKPHOTO"];
$PHOTO = $bericht["PHOTO"];
$MARKVIDEO = $bericht["MARKVIDEO"];
$VIDEO = $bericht["VIDEO"];
$MARKNEWS = $bericht["MARKNEWS"];


$berichten=mysql_query("SELECT * FROM $table ORDER BY id DESC LIMIT 5",$db); $num=1;
while($bericht=mysql_fetch_array($berichten)){
if($num==1){
$grootbericht="Bericht met onder andere $TITEL, $BODY";
}else{
$kleineberichten.="$bericht[titel]<br />";
}
$num++;
}

echo $grootbericht.'<br />'.$kleineberichten
?>
--- niet voor mietjes! ---
pi_41121966
quote:
Op donderdag 24 augustus 2006 10:33 schreef ronvonflon het volgende:
ik heb geen idee wat ik fout doe, maar ik krijg geen output:

<?php
include("admin/include/config.php");

$db = mysql_connect("$dbserver", "$dbuser", "$dbpass");
mysql_select_db("$dbname",$db);


$TITEL = $bericht["TITEL"];
$BODY = $bericht["BODY"];
$BGPHOTO = $bericht["BGPHOTO"];
$THUMBPHOTO = $bericht["THUMBPHOTO"];
$MARKPHOTO = $bericht["MARKPHOTO"];
$PHOTO = $bericht["PHOTO"];
$MARKVIDEO = $bericht["MARKVIDEO"];
$VIDEO = $bericht["VIDEO"];
$MARKNEWS = $bericht["MARKNEWS"];


$berichten=mysql_query("SELECT * FROM $table ORDER BY id DESC LIMIT 5",$db); $num=1;
while($bericht=mysql_fetch_array($berichten)){
if($num==1){
$grootbericht="Bericht met onder andere $TITEL, $BODY";
}else{
$kleineberichten.="$bericht[titel]<br />";
}
$num++;
}

echo $grootbericht.'<br />'.$kleineberichten
?>
Ik zie nergens $table gedefinieëerd worden. Wat staat er in config.php?

Overigens kun je al die losse variabelen boven dat stukje code van mij nu compleet weghalen. Niet de eerste 3 regels natuurlijk. En je moet $bericht[titel] en $bericht[body] niet veranderen naar $TITEL en $BODY, trouwens.
pi_41134318
Ik heb een stukje code waarmee ik iets van elkaar wil aftrekken.
$COSTSCRIPT_UPLOAD Deze wordt in de config php gezet en die andere wordt uit de database gepakt
de waarde daarvan is 5
nu wordt mijn tabel altijd upgedate naar -5 hoe kan dit
Trouwens de seedbonus is 160

Weet iemand wat ik fout doe
1
2
3
4
5
6
7
<?php
$query_bonuscount
= "SELECT seedbonus FROM users WHERE id='".$CURUSER['uid']."'";
                   
mysql_query($query_bonuscount) or die(mysql_error());
                
$newseedbonus = $query_bonuscount - $COSTSCRIPT_UPLOAD;
                 
$query_update = "UPDATE users SET seedbonus='$newseedbonus' WHERE id='".$CURUSER['uid']."'";
                 
mysql_query($query_update) or die(mysql_error());
?>
pi_41134544
Dat kan toch ook in 1 query:
1
2
3
4
<?php
                 $query_update
= "UPDATE users SET seedbonus = seedbonus - ".$COSTSCRIPT_UPLOAD." WHERE id='".$CURUSER['uid']."'";
                 
mysql_query($query_update) or die(mysql_error());
?>
pi_41134633
idd dat zie ik nu ook alleen krijg nog steeds - 5
pi_41134758
quote:
Op donderdag 24 augustus 2006 17:16 schreef dujour het volgende:
idd dat zie ik nu ook alleen krijg nog steeds - 5
Heb je $COSTSCRIPT_UPLOAD als string gedefineerd, ipv als integer?
1
2
3
4
<?php
$COSTSCRIPT_UPLOAD
= "5"; // string
$COSTSCRIPT_UPLOAD = 5; // integer
?>
pi_41134763
als ik de min in een plus verander doet ie het wel :S
pi_41138803
1
2
3
<?php
$newseedbonus
= $query_bonuscount - $COSTSCRIPT_UPLOAD;
?>

Ho eens even, hier gaat het ernstig fout. Wat zit er precies in $query_bonuscount? Juist, de query (string) zelf.
pi_41140279
quote:
Op donderdag 24 augustus 2006 19:43 schreef JeRa het volgende:

[ code verwijderd ]

Ho eens even, hier gaat het ernstig fout. Wat zit er precies in $query_bonuscount? Juist, de query (string) zelf.
Zie mijn bericht:
1
2
3
4
5
<?php
php
$query_update
= "UPDATE users SET seedbonus = seedbonus - ".$COSTSCRIPT_UPLOAD." WHERE id='".$CURUSER['uid']."'";
mysql_query($query_update) or die(mysql_error());
?>


@dujour: mijn 2e bericht ook gezien?
pi_41140986
quote:
Op donderdag 24 augustus 2006 20:23 schreef Piles het volgende:

[..]

Zie mijn bericht:
[ code verwijderd ]
Ik zie geen bericht dat hij jouw voorbeeld ook daadwerkelijk gebruikt heeft wellicht loopt hij daar dus nog steeds op vast.
pi_41171001
Ik heb een database met een tabel nieuws. Die moet uitgelezen worden, en elk bericht onder elkaar neer zetten.

Eerst had ik dit:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$sql
= "SELECT * FROM nieuws";
$result = mysql_query($sql)
    or die(
"fout bij uitvoeren query");
    
if (!
$result) {
   echo
'Could not run query: ' . mysql_error();
   exit;
}

$row = mysql_fetch_row($result);

echo
"<h2>$row[2]</h2>"; //kop
echo "<h3>$row[1]</h3>"; // de datum
echo "<p>$row[3]</p>"; //inhoud van bericht
?>

en dat werkte een beetje, alleen het eerste bericht werd getoont.

dus had ik dit van gemaakt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$sql
= "SELECT * FROM nieuws";
$result = mysql_query($sql)
    or die(
"fout bij uitvoeren query");
    
if (!
$result) {
   echo
'Could not run query: ' . mysql_error();
   exit;
}

while (
$row= mysql_fetch_row($result)) {
     foreach (
$row as $value) {
    echo
"<h2>$value[2]</h2>"; //kop
    
echo "<h3>$value[1]</h3>"; // de datum
    
echo "<p>$value[3]</p>"; //inhoud van bericht
    
}
}
?>

maar nu krijg ik als output dit:

1<h2></h2><h3></h3><p></p><h2>0</h2><h3>0</h3><p>6</p>

en dat is duidelijk niet wat in de DB staat.
pi_41171176
Waarom nog een foreach daarin?

1
2
3
4
5
while ($row = mysql_fetch_array($result)) {
    echo "<h2>". $row[2] ."</h2>"; //kop
    echo "<h3>". $row[1] ."</h3>"; // de datum
    echo "<p>". $row[3] ."</p>"; //inhoud van bericht
}

Werkt dat niet?
mysql_fetch_assoc ftw overigens
pi_41171899
Dat werkt wel inderdaad.

Wat is het voordeel van mysql_fetch_assoc?
pi_41178294
quote:
Op vrijdag 25 augustus 2006 19:06 schreef super-muffin het volgende:
Dat werkt wel inderdaad.

Wat is het voordeel van mysql_fetch_assoc?
Dan haal je alleen de celnamen op. Normaal gesproken krijg je dubbele waarden, zoals dit:
1
2
3
4
5
6
Array {
  [0] => waarde1
  ["cel_id"] => waarde1
  [1] => waarde2
  ["cel_titel"] => waarde2
}


Met assoc haal je alleen de celnamen (de 'associatieve' waarden) ipv de numerieke én associatieve. Het zal qua performance niet erg veel uitmaken, totdat je met hele grote resultatensetten te maken krijgen. Maar de associatieve waarden zijn sowieso veel duidelijker om mee te werken.

mysql_fetch_assoc is overigens gewoon een kortere manier om mysql_fetch_array($result, MYSQL_ASSOC) te schrijven.
pi_41200186
oke dat snap ik

maar nu word het oudste bericht bovenaan gezet, en de nieuwste onderaan, hoe kan ik dat omdraaien? Moet het in een array en dan?
pi_41200218
ORDER BY datum DESC

Basis SQL
pi_41200905
daar heb ik me nog niet echt in verdiept
maar bedankt
pi_41214250
Heeft iemand een heel simpel upload script wat in 1 pagina kan?
pi_41214528
ff wat gecopy-paste

Dus hij zal het niet direct doen.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
         <!-- The data encoding type, enctype, MUST be specified as below -->
         <form enctype="multipart/form-data" action="csv.php?action=csv" method="POST">
             <!-- MAX_FILE_SIZE must precede the file input field -->
             <input type="hidden" name="MAX_FILE_SIZE" value="300000" />
             <!-- Name of input element determines name in $_FILES array -->
             Send this file: <input name="userfile" type="file" />
             <input type="hidden" name="status" value="upload" />
             <input type="submit" value="Send File" />
         </form>
         
<?php         
        if ($_FILES['userfile']['type'] != "text/comma-separated-values") {
          print "Onjuiste bestandstype";
          print_r($_FILES);
          $i = 2;
             break 1;
        }
        
        $uploaddir = 'C:/Apache Group/Apache2/htdocs/upload/';
        $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
        if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
            echo "File is valid, and was successfully uploaded.\n";
        } else {
            echo "Possible file upload attack!\n";
            break 1;
        }
        
         ?>

deze accepteert alleen CSV-bestanden. En je moet ook nog de extensie controleren (Tenminste, als je bepaalde bestanden wilt weigeren).
pi_41214767
Waar heb je dat vandaan?

Iemand een andere dat beetje makkelijker is? Ik heb dus een prive gedeelte en dat is een soort desktop, zeg maar... Nu wil ik daar een klein invul veld hebben waar ik daar een adres kan opgeven van een bestand. En als ik op de submit klik dan krijg ik een melding dat het goed gegaan is. Hij moet dan dat bestand uploaden in een map. Meer niet.

[ Bericht 66% gewijzigd door Qunix op 27-08-2006 02:49:31 ]
pi_41216437
quote:
Op zondag 27 augustus 2006 02:42 schreef Qunix het volgende:
Waar heb je dat vandaan?

Iemand een andere dat beetje makkelijker is? Ik heb dus een prive gedeelte en dat is een soort desktop, zeg maar... Nu wil ik daar een klein invul veld hebben waar ik daar een adres kan opgeven van een bestand. En als ik op de submit klik dan krijg ik een melding dat het goed gegaan is. Hij moet dan dat bestand uploaden in een map. Meer niet.
zonder de pagina te verversen kom je dan uit op de techniek achter ajax (geen nidee of deze het kan..)
pi_41220243
Hoi begin nu ook een beetje meer met php te werken (voorheen altijd Coldfusion gedaan). Hoe kan ik een heel blok in 1x 'echo-en'?

Nu moet ik bij elke output er echo voorzetten:
1
2
3
4
5
6
7
8
9
echo "<html>";
echo "<head>";
echo "<title>My Title</title>";
echo "</head>";
echo "<script>";
echo "function is myFunction(){";
echo "alert('hoi');";

etc....
pi_41220414
gewoon niet je echo afsluiten
echo "hee
hoe ist nou?
ojajoh?";
As a rule, I never touch anything more sophisticated and delicate than myself.
pi_41220497
Soms is het leven simpel
Thanks

Ik neem aan dat je dan strings moet backslashen welke in de echo gebruikt worden?

1echo "hoi \"test\" dag";
pi_41220897
Klopt, of je doet het zo
1echo 'hoi "test" dag';
  zondag 27 augustus 2006 @ 15:33:20 #119
85514 ralfie
!Yvan eht nioj
pi_41224669
Of zo
1
2
3
echo <<<XYZ
hoi "test" dag!
XYZ;
  zondag 27 augustus 2006 @ 15:52:29 #120
62215 qu63
..de tijd drinkt..
pi_41225260
quote:
Op zondag 27 augustus 2006 15:33 schreef ralfie het volgende:
Of zo

[ code verwijderd ]
leg die eens uit
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')