[PHP] Newlines in string

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • $n@p$hot
  • Registratie: Juni 2000
  • Laatst online: 17-09 21:48
Ik heb de volgende code die een XML-bericht genereert:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$XMLString = "<?xml version='1.0'?><INSERT>";
while ($rij = mysql_fetch_array($resultaat)) 
{
  $catquery = "SELECT Naam FROM categorie 
                        WHERE Categorieid ='$rij[CategorieID]'";
  $res = mysql_query($catquery);
  $categorie = mysql_fetch_array($res);
  $cat = $categorie[Naam];
  $XMLString = $XMLString."<PRODUCT fid='$rij[Productid]'>\n
                       <NAAM>$rij[Naam]</NAAM>\n<PRIJS>$rij[Prijs]</PRIJS>\n";
  $XMLString .= "<OMSCHRIJVING>$rij[Omschrijving]</OMSCHRIJVING>\n
                         <PLAATJE>$rij[Plaatje]</PLAATJE>\n
                          <CATNAAM>$cat</CATNAAM>\n</PRODUCT>\n";
}
$XMLString = $XMLString."</INSERT>";


en dit geeft het volgende resultaat:

code:
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
<?xml version='1.0'?><INSERT>
......
<PRODUCT fid='7'>
<NAAM>Trust draadloos netwerkkit</NAAM>
<PRIJS>179</PRIJS>
<OMSCHRIJVING>..... </OMSCHRIJVING>
<PLAATJE>trust.gif</PLAATJE>
<CATNAAM>Netwerkaccessoires</CATNAAM>
</PRODUCT>
<PRODUCT fid='8'>
<NAAM>USB netwerkkabel</NAAM>
<PRIJS>35</PRIJS>
<OMSCHRIJVING></OMSCHRIJVING>
<PLAATJE>usb.gif</PLAATJE>
<CATNAAM>Netwerkaccessoires</CATNAAM>
</PRO


DUCT>
<PRODUCT fid='9'>
<NAAM>Netwerkkaart</NAAM>
<PRIJS>15</PRIJS>
<OMSCHRIJVING>.........</OMSCHRIJVING>
<PLAATJE>netwerk.gif</PLAATJE>
<CATNAAM>Netwerkaccessoires</CATNAAM>
</PRODUCT>
</INSERT>


Zoals je kunt zien, genereert mijn code een XML-bericht wat bijna helemaal correct is. Het enigste probleem is dat ik 2 of 3 newlines teveel krijg in 1 </product>-tag. Ik zet deze er niet zelf neer zoals je kunt zijn in de code, dus ik hoop dat iemand van jullie weet hoe ik deze newlines kan wegkrijgen. Ik denk zelf dat het iets te maken heeft met de lengte van de $XMLString, want als ik minder producten in het XML-bericht zet, dan staan de newlines ook op een andere plek.

[ Voor 27% gewijzigd door $n@p$hot op 24-01-2003 14:38 ]


Acties:
  • 0 Henk 'm!

  • CyeZ
  • Registratie: September 2001
  • Laatst online: 10-09 03:41

CyeZ

Vroem vroem!!!

misschien is het handig om wat newlines in je bericht zelf te plaatsen? Zo is het absoluut onleesbaar.

[18:54] <Prammenhanger> |HunterPro|eet
[18:55] <Prammenhanger> lijkt best op
[18:55] <Prammenhanger> |HunterProFeet


Acties:
  • 0 Henk 'm!

  • Liqued
  • Registratie: Februari 2001
  • Laatst online: 06-08 15:21
Doet ie het zelfde als je nog een record toevoegd?

Acties:
  • 0 Henk 'm!

  • $n@p$hot
  • Registratie: Juni 2000
  • Laatst online: 17-09 21:48
Liqued schreef op 24 januari 2003 @ 14:37:
Doet ie het zelfde als je nog een record toevoegd?
Hoe bedoel je dit?

Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 12:54

Bosmonster

*zucht*

Makkelijker is vaak om dit soort dingen ipv in een lange PHP-string, op zo'n manier te genereren:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<main>
<?php
while ($row = mysql_fetch_object($rs))
{
?>
<bla>
<blabla><?php echo $row->blabla ?></blabla>
<bloblo><?php echo $row->bloblo ?></bloblo>
<blibli><?php echo $row->blibli ?></blibli>
</bla>
<?php
}
?>
</main>


Scheelt je hoop gedoe met newlines, strings en concatenaten..

[ Voor 6% gewijzigd door Bosmonster op 24-01-2003 14:43 ]


Acties:
  • 0 Henk 'm!

  • Liqued
  • Registratie: Februari 2001
  • Laatst online: 06-08 15:21
Je drukt nu maar 2 fid af.. als je er nou nog 1 toevoegt.. geeft ie dan nogsteeds alleen bij die eerst die \n'en of ook bij andere?
Pagina: 1