- Home
- Categorie
- Coding e Sistemistica
- PHP
- Risultato query: Resource id #
-
Risultato query: Resource id #
Ciao a tutti,
sto provando a scrivere un piccolo script per generare un codice in una textarea che permetta agli utenti del mio sito di copiare e incollare nella propria firma il codice bello pronto di un'immagine linkata alla loro pagina personale. Il codice è di questo tipo[html][url=http://www.miosito/paginepersonali/index.php?up_pageid=$personalpage][/html]
Per ottenere ciò ho preparato un form in html che mostra le possibili immagini a ciascuna delle quali è associato un input radio che ha come value l'URL dell'immagine. Quando l'utente clicca sul pulsante di invio viene richiamato un file php con questo codice.
[php]<?php
include("../../mainfile.php");
include(XOOPS_ROOT_PATH."/header.php");
$logid = $xoopsUser->getVar("uid");
$_POST['banner'] = $banner;
$qry="SELECTup_pageid
FROMxoops_userpage
WHEREup_uid
=$logid";
$personalpage=mysql_query($qry);
$textarea = "<textarea>[url=http://miosito/paginepersonali/index.php?page_id=$personalpage]</textarea>";
echo $textarea;
echo "user id $logid";
echo "personalpage $personalpage";
include(XOOPS_ROOT_PATH."/footer.php");
?>[/php]Tralasciando le prime righe che occorrono per inserire la pagina nel sito (fatto con Xoops)...
Viene definito $logid e viene richiamata l'immagine scelta $banner.
A questo punto viene eseguita una query che vada a cercare $logid nella tabella userpage e che estragga dal campo up_pageid il valore corrispondente. A questo punto viene stampato il codice nella textarea.Il problema è che deve esserci qualche errore nella query perchè il risultato che ottengo per $personalpage è Resource id#399!
Non riesco a capire dove sia l'errore...
Nella tabella userpage il campo up_uid contiene l'id dell'utente e il campo up_pageid è un contatore autoincrement.Qualcuno mi può aiutare?
Grazie
Chiara
-
Ciao chiara,prova così:
[php]<?php
include("../../mainfile.php");
include(XOOPS_ROOT_PATH."/header.php");
$logid = $xoopsUser->getVar("uid");
$_POST['banner'] = $banner;
$qry="SELECTup_pageid
FROMxoops_userpage
WHEREup_uid
=$logid";
$personalpage=mysql_fetch_assoc(mysql_query($qry));
$textarea = "<textarea>[url=http://miosito/paginepersonali/index.php?page_id=$personalpage[up_pageid]]</textarea>";
echo $textarea;
echo "user id $logid";
echo "personalpage $personalpage";
include(XOOPS_ROOT_PATH."/footer.php");
?>[/php]p.s: nn ho capito cosa ricava la query $qry...
-
Ciao Probid,
innanzitutto grazie mille per la disponibilità e la rapidità.
Ho provato a fare la modifica che mi hai suggerito e a questo punto il risultato che ottengo è Array.Cerco di spiegare meglio cosa deve fare $qry!
La mia tabella userpage contiene tra gli altri due campi up_pageid e up_uid. Il campo up_id contiene di id degli utenti che hanno creato una pagina personale, il campo up_pageid è quello che contiene l'id della pagina (un numero crescente).
Il mio problema è che quando l'utente chiede il codice devo aggiungere in fondo all'URL l'ID della sua pagina personale.
Per fare questo ho pensato di richiamare l'id dell'utente loggato e con la query $qry verificare se l'utente ha creato una pagina e quindi estrarre per l'id dell'utente l'id della pagina personale corrispondente.A parte la questione if... che proverò a risolvere in seguito. Vorrei intanto provare a risolvere questo primo problema.
Spero di essere riuscita a spiegarmi meglio... sono un pò fusa ci ho lavorato tutto il pomeriggio... non sono esperta di php, uso xoops come cms ma mi è capitato qualche volta di avere la necessità di creare piccoli script come questo.
Ancora grazie mille!
Chiara
-
Prova ora (avevo lasciato un pezzo :D):[php]
<?php
include("../../mainfile.php");
include(XOOPS_ROOT_PATH."/header.php");
$logid = $xoopsUser->getVar("uid");
$_POST['banner'] = $banner;
$qry="SELECTup_pageid
FROMxoops_userpage
WHEREup_uid
=$logid";
$personalpage=mysql_fetch_assoc(mysql_query($qry));
echo "<textarea>[url=http://miosito/paginepersonali/index.php?page_id=$personalpage[up_pageid]]</textarea>";
echo "user id $logid";
echo "personalpage $personalpage[up_pageid]";
include(XOOPS_ROOT_PATH."/footer.php");
?>[/php]
-
Grazie enormemente... funziona alla perfezione
Ne approfitto per chiederti un'ultima delucidazione.
Nella parte del codice relativa al contenuto della textarea non ho potuto usare le normali parentesi quadre.
Avevo da subito provato a farle precedere da un backslash come per le virgolette. Ma nel risultato venivano stampate anche le backslash.
Allora ho sostituito le parentesi con & #91; e & #93; (senza spazi)è corretto? o esiste un modo più elegante?
Un ultimo grazie... :oregonian_martini: Alla tua!
Chiara
p.s. da grande voglio essere come te
-
Innanzitutto non devi ringraziarmi,questo è il mio hobby e aiuto volentieri chi ne ha bisogno
Per gli slashes basta fare così:
[php]echo stripslashes("<textarea>[url=http://miosito/paginepersonali/index.php?page_id=$personalpage[up_pageid]];[/php]Ciao chiara!
P.S: Spero tornerai se avrai bisogno