php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 2 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 28-06-2010, 15:27
donniedarko
 Registrierter Benutzer
Links : Onlinestatus : donniedarko ist offline
Registriert seit: Jun 2010
Beiträge: 5
donniedarko befindet sich auf einem aufstrebenden Ast
Standard str_replace, mysql_fetch_* & Co

Hallo zusammen,

also, ich habe eine HTML Datei in der sich das Design der Seite befindet (quasi Site Template genannte site.html).

Als Zweites habe ich eine replace.php

PHP-Code:
<?php
  $f 
file('site.html');
  
$source join($f);

  
$source str_replace('~CONTENT~'$low_pagecontent$source);

  echo 
$source;

?>
Die mir quasi den inhalt belibiger php dateien ins Template pack und mir die gewünschten Daten in dem Design anzeigt.

Als dirttes habe ich eine test.php

PHP-Code:
...
        function 
test($ListMyWishOut)
        {
        
$ListMyWishOut ListMyWish($ListMyWishQuery);
                while(
$row8 mysql_fetch_assoc($ListMyWishOut))
                {
                echo 
$row8[descr];
                echo 
'<br>';
                }
return 
$ListMyWishOut;
}

$BLA test($ListMyWishOut);


$low_pagecontent2 '' $BLA .' bla';

$low_pagecontent $low_pagecontent2;
include 
"replace.php";
?> 
jetzt sieht es so aus dass mir oben ausserhalb der Seite die daten vernünftig ausgegeben werden, wird verursacht du

PHP-Code:
$BLA test($ListMyWishOut); 
sind insgesammt 6 Datensätze aus einer MySQL Tabelle.

Die ausgabe aus dieser Zeile: =>
PHP-Code:
 $low_pagecontent2 '' $BLA .' bla'
gibt einfach nur Resource id #6 bla aus.

Ich habe es zwar hinbekommen dass er mir auch Daten anzeigt und nicht Ressource id #X aber da hatte ich das Problem dass er mir nur die erste Zeile ausgegeben hat.

Habe zwar einen Eintrag gefunden der so ein ähmliche Problem behandelt der Eintrag hat mir aber nicht weitergeholfen.

Für Tipps Ratschläge usw. wäre ich dankbar!

Geändert von donniedarko (28-06-2010 um 18:02 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 28-06-2010, 16:34
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Wir haben hier Code-Tags: Nutze sie!
Mit Zitat antworten
  #3 (permalink)  
Alt 28-06-2010, 16:55
donniedarko
 Registrierter Benutzer
Links : Onlinestatus : donniedarko ist offline
Registriert seit: Jun 2010
Beiträge: 5
donniedarko befindet sich auf einem aufstrebenden Ast
Standard

Sorry mein Fehler!

Habe es nun Korrigiert!
Mit Zitat antworten
  #4 (permalink)  
Alt 28-06-2010, 18:14
eagle275
 Registrierter Benutzer
Links : Onlinestatus : eagle275 ist offline
Registriert seit: Jun 2010
Beiträge: 403
eagle275 befindet sich auf einem aufstrebenden Ast
Standard Edit:

du erhältst aus deiner Abfrage (ich nehm mal an, die steckt in dieer Funktion
Code:
ListMyWish($ListMyWishQuery);
ein Array - dass du ja auch mit
PHP-Code:
while($row8 mysql_fetch_assoc($ListMyWishOut)) 
abklapperst ...

nur gibst du deine Funde direkt mittels echo aus..

dann liefert deine Funktion das Array zurück - und du gibst mittels deiner Ausgabe-Funktion genau dieses Array weiter an die Replace - Datei.,.

und die gibt korrekt aus ., 6 Einträge im Array ...

vielleicht solltest du mal einen geeigneten Antwort-String zusammenbasteln und den zurückgeben in der Test-Funktion

Vorschlag:
PHP-Code:
function test($ListMyWish) {
      
$ListMyWishOut ListMyWish($ListMyWishQuery);
      
$aus='<div align=center><table><tr><td>Eintrag# </td><td>Description</td></tr>';
      
$k=1;
      while(
$row8 mysql_fetch_assoc($ListMyWishOut))
      {
            
$aus.='<tr><td>'.$k++.'</td><td>'.$row8[descr].'</td></tr>';
      }
      
$aus.='</table></div><br>';
      return Array(
$aus,$ListMyWishOut);
}


....

$BLA test($ListMyWishOut);


$low_pagecontent2 '' $BLA[0] .' bla';

$low_pagecontent $low_pagecontent2;
include 
"replace.php"
jetzt hast du zumindest eine Ausgabe aus laufender Nummer ($k) und der Beschreibung aus deiner Datenbank ...

@Mods - nicht hauen, dass ich html-Tabelle für Ausgabe-Formatierung nutze .. das geht mit CSS und divs eleganter und schöner . ist mir klar - aber die Tabelle geht viel einfacher als Test
__________________

Wer LESEN kann, ist klar im Vorteil!

Geändert von eagle275 (28-06-2010 um 18:39 Uhr) Grund: post überarbeitet , mit Beispielfunktion erweitert
Mit Zitat antworten
  #5 (permalink)  
Alt 28-06-2010, 18:18
donniedarko
 Registrierter Benutzer
Links : Onlinestatus : donniedarko ist offline
Registriert seit: Jun 2010
Beiträge: 5
donniedarko befindet sich auf einem aufstrebenden Ast
Standard

das hier steckt hinter der Funktion ListMyWishQuery

PHP-Code:
function ListMyWish($ListMyWishQuery)
{
       
        
$ListMyWishSql "select * from mywish";

        
$ListMyWishQuery mysql_query ($ListMyWishSql);
                if (!
$ListMyWishQuery)
                {
                die(
'Fehler Code 3' mysql_error());
                }
return 
$ListMyWishQuery;


Kannst du das evlt. etwas ausführlicher beschreiben was du damit meinst: "vielleicht solltest du mal einen geeigneten Antwort-String zusammenbasteln und den zurückgeben in der Test-Funktio"
Mit Zitat antworten
  #6 (permalink)  
Alt 28-06-2010, 18:38
eagle275
 Registrierter Benutzer
Links : Onlinestatus : eagle275 ist offline
Registriert seit: Jun 2010
Beiträge: 403
eagle275 befindet sich auf einem aufstrebenden Ast
Standard

schau mal, ich hab meinen vorherigen Post um eine Abänderung deiner Test-Funktion erweitert ..

Nimm es als Anregung - du kannst ja weitere Tabellenspalten bei der Zeile
Code:
$aus.="<tr><td>'.$k++.'</td><td>' .....
einfach mit reinhängen,

du musst nur das schließende Tag der Table-Row weiter nach hinten verschieben und weitere
Code:
<td>'.$row8[spaltex].'</td>
dazwischenschieben - jeweils nach einem </td>
__________________

Wer LESEN kann, ist klar im Vorteil!

Geändert von eagle275 (28-06-2010 um 18:41 Uhr) Grund: tippfehler
Mit Zitat antworten
  #7 (permalink)  
Alt 28-06-2010, 18:57
donniedarko
 Registrierter Benutzer
Links : Onlinestatus : donniedarko ist offline
Registriert seit: Jun 2010
Beiträge: 5
donniedarko befindet sich auf einem aufstrebenden Ast
Standard

Funktioniert, klasse!

Versuche jetzt nur noch dass zu verstehen. Ist hier das Inkrement von $k der entscheidende knackpunkt? Ich meine (ohne es zu verhamlosen) es doch nur die Nummerierung am zeilen anfang.

Oder erfüllt das Inkrement $k noch einen anderen zweck?
Mit Zitat antworten
  #8 (permalink)  
Alt 28-06-2010, 19:24
eagle275
 Registrierter Benutzer
Links : Onlinestatus : eagle275 ist offline
Registriert seit: Jun 2010
Beiträge: 403
eagle275 befindet sich auf einem aufstrebenden Ast
Standard

nein .. $k++ sorgt lediglich dafür, dass in der Spalte Eintrag# die Zahl ausgegeben wird und anschließend $k um 1 hochgezählt wird für die nächste Zeile ..

der eigentliche Punkt ist doch in deinem mysql_fetch_assoc enthalten ...

das gibt die einzelnen Zeilen der Ergebnis-Tabelle (aus der Datenbank-Abfrage) zurück in einem Assoziativen Array ...

du musst nun lediglich die Daten aus diesem Array (dankenswerterweise ja immer 1 Zeile) ausgeben ...

also $row8[Spalte X] ,. als Beispiel hattest du ja die Spalte descr angegeben..

Wenn du wissen willst, was da noch drinsteckt..

Code:
  foreach($row8 as $key=>$element) {
   echo $key." -- ".$element;
  }
das gibt dir die Bestandteile einer Tabellenzeile aus .. die $key-Teile kannst du dann zum Zugriff auf die einzelnen Felder des Feldes $row8[key_wert] verwenden

ansonsten muss deine Funktion ja nur noch ihren Text ($aus) an die aufrufende zurückgeben, damit der dann irgendwann mit dem str_replace in der Ausgabe landet


der eigentliche Punkt ist deine Ausgabe mit str_replace kann mit der nackten Ergebnis-Tabelle der Datenbank nix anfangen - daher musst du die Antwort-Tabelle der Datenbank irgendwie in Html-Code übersetzen und dann weiterreichen
__________________

Wer LESEN kann, ist klar im Vorteil!

Geändert von eagle275 (28-06-2010 um 19:30 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 28-06-2010, 19:28
donniedarko
 Registrierter Benutzer
Links : Onlinestatus : donniedarko ist offline
Registriert seit: Jun 2010
Beiträge: 5
donniedarko befindet sich auf einem aufstrebenden Ast
Standard

ohje, viel lernen ich muss...

Danke noch mal!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
SQL Abfrage über mehrere Tabellen. mysql_fetch_??? Sebast1an PHP Developer Forum 6 29-03-2007 15:01
str_replace fabs14 PHP Developer Forum 17 29-06-2006 18:20
str_replace Gaint PHP Developer Forum 4 22-04-2006 18:21
str_replace in sql Le_Cheffe SQL / Datenbanken 1 02-10-2003 07:21
str_replace... rainer669 PHP Developer Forum 15 06-02-2003 15:06

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

Plates native PHP template system

Plates ist ein natives PHP-Vorlagensystem, das schnell, einfach zu verwenden und einfach zu erweitern ist.

24.05.2019 Berni | Kategorie: PHP/ Framework
Maqetta Open Source  HTML5-Editor ansehen Maqetta Open Source HTML5-Editor

Einen WYSIWYG-Editor zur visuellen Erstellung von Userinterfaces in HTML5 (Drag-and-Drop)

13.05.2019 Berni | Kategorie: HTML5/ EDITOR
NodeBB

NodeBB ist eine Foren-Software auf NodeJS-Basis

13.05.2019 Berni | Kategorie: PHP/ Forum PHP Software
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:51 Uhr.